我有一个复选框,当选中该复选框时,我想将int 2添加到我的总数中。然后,我希望能够取消选择它,然后将int 2减去我的总数。
目前,我无法取消选择并减去2。
另外,我的复选框在按钮组中,因此我需要使用clearSelection()作为取消选择的解决方案。
我目前为此使用的代码是(效果不太好):
monTill4ChckBox.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(monTill4ChckBox.isSelected()){
mondayCost= mondayCost + 2;
}
else{
mondayCost= mondayCost - 2;
monAftergroup.clearSelection();
}
最佳答案
我认为您应该将项目侦听器添加到复选框以正确侦听检查状态。
像这样的东西;
monTill4ChckBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent arg0) {
if(monTill4ChckBox.isSelected()){
mondayCost= mondayCost + 2;
}
else{
mondayCost= mondayCost - 2;
monAftergroup.clearSelection();
}
System.err.println("Counter: " + mondayCost);
}
});