如何使用 Java Swing 取消选择和撤消复选框?
How to unselect and undo with checkboxes using Java Swing?
我有一个复选框,选中该复选框后我想将 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);
}
});
我有一个复选框,选中该复选框后我想将 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);
}
});