我在 ButtonGroup 中有几个 JRadioButton。
private ButtonGroup radioGroup= new ButtonGroup();
private JRadioButton radio1= new JRadioButton("Red");
private JRadioButton radio2= new JRadioButton("Green");
private JRadioButton radio3= new JRadioButton("Blue");
radioGroup.add(radio1);
radioGroup.add(radio2);
radioGroup.add(radio3);
如何查看选择了哪一个?
使用
System.out.println(radioGroup.getSelection())
我只能得到类似 javax.swing.JToggleButton$ToggleButtonModel@32b3714
的东西。 最佳答案
从选定的 ButtonModel 中,您可以获得 actionCommand 字符串(如果您记得设置它!)。
// code not compiled, run, nor tested in any way
ButtonModel model = radioGroup.getSelection();
String actionCommand = (model == null) ? "" : model.getActionCommand():
System.out.println(actionCommand);
但这只有在您首先设置 actionCommand 时才有效。例如。,:
// code not compiled, run, nor tested in any way
String[] colors = {"Red", "Green", "Blue"};
JRadioButton[] radioBtns = new JRadioButton[colors.length];
for (int i = 0; i < radioBtns.length; i++) {
radioBtns[i] = new JRadioButton(colors[i]);
radioBtns[i].setActionCommand(colors[i]);
radioGroup.add(radioBtns[i]);
somePanel.add(radioBtns[i]);
}
关于java - 选择了哪个 JRadioButton,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10067053/