У меня есть небольшая панель, которая имеет 3 JComboBox
и 2 JCheckBox
, которая относится к JButtonGroup
. Я пытаюсь проверить правильность формы панели и что все обязательные поля не имеют нулевого выбора, поэтому я создал метод.Как проверить, принадлежит ли JCheckBox группе кнопок?
public static boolean isValid(List<Component> aComponent){
boolean isValid = false ;
for(Component c: aComponent){
if(c instanceof JComboBox){
isValid = (((JComboBox) c).getSelectedIndex() > -1);
JOptionPane.showMessageDialog(null,"ComboBox returned: "+isValid);
}else if(c instanceof JCheckBox){
isValid = (((JCheckBox) c).isSelected());
JOptionPane.showMessageDialog(null,"Checkbox returned: "+isValid);
}else if(c instanceof JTextField){
isValid = ((JTextField) c).getText().isEmpty();
JOptionPane.showMessageDialog(null,"TextField returned: "+isValid);
}
}
return isValid;
}
Проблема заключается в том, нужно только иметь один выбранный JCheckbox
для студенческого типа. Мне нужно проверить, есть ли в группе Button не менее 1JChecBox
проверено.
Следующий блок будет возвращать ложь, так как Правопреемник и New являются экземплярами JCheckBox. Но мне нужно только 1 JCheckBox
, чтобы сделать форму действительной.
Как проверить, проверено ли хотя бы 1 из группы кнопок, используя мой метод isValid()
?
см. Http://stackoverflow.com/questions/201287/how-do-i-get-which-jradiobutton-is-selected-from-a-buttongroup – c0der