Java: могут ли переключатели одной и той же группы кнопок находиться на разных панелях?

Я уже добавил радиокнопки в группу кнопок, но проблема в том, что обе радиокнопки можно выбрать одновременно! Я не знаю, что делать. Пожалуйста помоги. Вот как выглядит мой текущий код:

JRadioButton rEncrypt, rDecrypt;

ButtonGroup bgroup = new ButtonGroup();
bgroup.add(rEncrypt);   bgroup.add(rDecrypt);


    rEncrypt = new JRadioButton("Encryption");
    rEncrypt.setBackground(bgColor);
    rEncrypt.setSelected(true);
    pEncrypt = new JPanel();
    pEncrypt.setBackground(bgColor);
    pEncrypt.add(rEncrypt);


    rDecrypt = new JRadioButton("Decryption");
    rDecrypt.setBackground(bgColor);
    pDecrypt = new JPanel();
    pDecrypt.setBackground(bgColor);
    pDecrypt.add(rDecrypt);

person Ye' Thura Ag    schedule 27.11.2014    source источник
comment
Я не очень разбираюсь в свинге, но я уверен, что он не поддерживает более 1 родителя для каждого компонента. Если вы хотите, чтобы кнопки в разных местах вели себя как в группе, сделайте это вручную.   -  person zapl    schedule 27.11.2014


Ответы (1)


Не видя полностью работоспособного примера...

Делая это...

JRadioButton rEncrypt, rDecrypt;

ButtonGroup bgroup = new ButtonGroup();
bgroup.add(rEncrypt);   bgroup.add(rDecrypt);

перед этим...

rEncrypt = new JRadioButton("Encryption");
//...
rDecrypt = new JRadioButton("Decryption");

неправильно...

Вам нужно создать кнопки ДО того, как вы добавите их в ButtonGroup...

person MadProgrammer    schedule 27.11.2014