采用Checkbox中的setState()方法来设置单选摁钮的状态,但是竟然无效,怎么解决阿?

来源:百度知道 编辑:UC知道 时间:2024/05/24 00:00:00
我写了一个简单的自动阅卷打分的程序,每道题目有四个答案备选,当选好答案并点击“next”摁钮后给出下一道题目以及该题目的备选答案,答案的选择采用Checkbox来选择。

问题就出在这里。当选择好一个答案并点击“next”摁钮进入下一道题目后,你所点击的那个Checkbox还处于被选择状态。我想在进入下一道题目后把所有checkbox都变为不被选中状态,于是查找API说明,找到setState()这个方法,于是就用checkbox[i].setState(false)来把所有checkbox设置为非选状态。但是奇怪的是竟然没有任何效果,再去查找API说明,觉得就是这个方法没错,问题出在哪里呢?小弟我没分了,实在抱歉,恳请大家帮我看看。编译器是Eclipse 3.4

相应代码段:

@Override
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==next) //点击“next”摁钮时的反映
{
if(!(s.startsWith("endend")))
{
reading();
for(int i=0;i<4;i++)
{
checkbox[i].setState(false); //把所有checkbox设置为不被选中状态
checkbox[i].setEnabled(true);
}
this.validate();
}
}
else if(e.getSource()==start && restart.equal

再仔细看看api,最后说这个方法只在初始化的时候起作用,其他时候没用的。

你一定要用awt的Checkbox吗?swing的JCheckBox好用多了,有setSelected这个方法。