Ich habe ein kleines Panel, das hat 3 JComboBox
und 2 JCheckBox
die gehört zu JButtonGroup
. Ich versuche zu überprüfen, ob die Panel-Form gültig ist und dass alle erforderlichen Felder keine Null-Auswahl haben, also habe ich eine Methode erstellt.Wie überprüft man, ob JCheckBox zu einer Schaltflächengruppe gehört?
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;
}
Das Problem ist, ich brauche nur ein JCheckbox
für Lerner ausgewählt haben. Ich muss überprüfen können, ob die Button-Gruppe mindestens 1JChecBox
überprüft hat.
Der folgende Block wird false zurück, da beide Transferee und New Instanzen JCheckBox sind. Aber ich brauche nur 1 JCheckBox
überprüft, um das Formular gültig zu machen.
Wie überprüfe ich, ob mindestens 1 mit der Methode isValid()
aus der Schaltflächengruppe ausgewählt wurde?
siehe: http://stackoverflow.com/questions/201287/how-do-i-get-which-jradiobutton-is-selected-from-a-buttongroup – c0der