取消选中java中的复选框

时间:2013-03-25 16:17:30

标签: java jcheckbox

在我的程序中,无论何时调用此方法,我都要取消选中所有复选框。有人可以解释为什么它不起作用?每当我调用此方法时,仍然会选中复选框。

private void nextQuestionButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                   

     clearOptions();

}    

public void clearOptions ()   
{ 
    //Make sure the check boxes are not checked
    optionA.setSelected(false);
    optionB.setSelected(false);
    optionC.setSelected(false);
    optionD.setSelected(false);  
}

6 个答案:

答案 0 :(得分:9)

首先,您需要将所有复选框的代码放在例如状态更改方法&的顶部。在取消选中复选框后,您可以创建一个像state&将变量值放在false&之后,您可以拨打checkbox.setSelected(false);boolean state = false; CheckBox.setSelected(state);来发送电子邮件!!!

答案 1 :(得分:0)

最简单的方法是将相同的按钮组应用于所有复选框。然后使用:

buttonGroup1.clearSelection();

几乎尝试了所有方法之后。这是迄今为止最简单,最有效的一个。

答案 2 :(得分:0)

如果您确定已选中checkbox,则可以切换它们。

checkbox.toggle();

答案 3 :(得分:0)

我尝试对带有空参数的复选框组使用此方法:

<div class='about' id='learn-more'>
                <br><br><br>
                <h1 class='about-title'>About and Q&A</h1>
                <br>
                <div class="container-question">
                    <div class="list-question">
                      <p>Q. Long Question</p>
                      <p>A. short Answer</p>
                    </div>
                </div>
                
               
                <br>
            </div>

答案 4 :(得分:-1)

通常在Swing中,后端中所做的任何更改都不会传播到可视元素。一个众所周知的例外是JTextField.setText()(对setText的任何调用都会立即更新可视文本元素。)

它甚至记录在API文档中:http://docs.oracle.com/javase/6/docs/api/javax/swing/AbstractButton.html#setSelected(boolean)

您可以继续使用您的代码,但是您必须(在)中验证容器。

答案 5 :(得分:-2)

 public void clearOptions ()   
{ 
            checkbox1.setState(false); 
             checkbox2.setState(false);
             checkbox3.setState(false);
             checkbox4.setState(false);
}