Java检查是否选中复选框
我使用: 创建一组三个复选框。现在,我想检查哪一个被检查。我使用:Java检查是否选中复选框,java,checkbox,awt,Java,Checkbox,Awt,我使用: 创建一组三个复选框。现在,我想检查哪一个被检查。我使用: CheckboxGroup cg = new CheckboxGroup(); Checkbox c1 = new Checkbox("A", false, cg); Checkbox c2 = new Checkbox("B", false, cg); Checkbox c3 = new Checkbox("C", true, cg); 但是这会使类型复选框的方法isSelected()未定义
CheckboxGroup cg = new CheckboxGroup();
Checkbox c1 = new Checkbox("A", false, cg);
Checkbox c2 = new Checkbox("B", false, cg);
Checkbox c3 = new Checkbox("C", true, cg);
但是这会使类型复选框的方法isSelected()未定义。。。建议的解决方案是将强制转换添加到c1,我这样做了,它给出了从复选框到抽象按钮的无法强制转换。。。同样,如果选中复选框,我怎么能只检查复选框?您可以使用或(如评论中所述)使用getState()
或
boolean checked = c1.getState();
if(c1.getState()) {
//c1 is checked
} else if (c2.getState()) {
//
}
根据您使用的isSelected
判断,我得出结论,您有两个错误中的一个:
如果要使用复选框,则应使用c1.getState()
而不是isSelected()
您需要RadioBox
而不是CheckBox
,然后可以使用isSelected()
方法。
你可以试试这个代码
Checkbox cb = cg.getSelectedCheckbox();
if(null != cb) {
//not checked
} else {
System.out.println(cb.getLabel() + " is checked");
}
首先,java.awt.Checkbox的超类java.awt.Component中没有.isSelected()方法
请检查上面的链接,查看从类java.awt.Component继承的方法
如果使用javax.swing.JComponent中的JCheckBox,则可以使用2nd.isSelected()方法;但不是AWT的复选框
请浏览下面的链接。。您可以找到.isSelected(),它继承自javax.swing.AbstractButton
我发现isChecked()方法是赢家
// check is ckeck box id
if (check.isSelected()) {
// your code for checked;
} else {
// our code for not checked;
}
CheckboxGroup#getSelectedCheckbox()
有什么问题吗?如果它们相互排斥,则似乎比复选框更合适。
// check is ckeck box id
if (check.isSelected()) {
// your code for checked;
} else {
// our code for not checked;
}
// Check to see if box is checked
if (c1.isChecked()) {
// Your code if the box is checked
} else {
// Your code if the box is not checked
}