【问题标题】:How to unselect and undo with checkboxes using Java Swing?java - 如何使用Java Swing取消选择和撤消复选框?
【发布时间】:2015-02-02 06:17:18
【问题描述】:

I have a checkbox, when the checkbox is selected I want to add int 2 to my total.然后我希望能够取消选择它,然后将 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();
            }

【问题讨论】:

  • 对不起,什么?考虑提供一个runnable example 来证明您的问题。这将导致更少的混乱和更好的响应

标签: java swing user-interface checkbox


【解决方案1】:

我认为您应该将项目侦听器添加到复选框以正确侦听检查状态。 像这样的东西;

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);
        }
    });

【讨论】:

  • 我已经实现了一个示例 gui 并添加了复选框并添加了上面的侦听器。并再次点击了很多次。没有问题。
猜你喜欢
  • 1970-01-01
  • 2011-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-14
  • 2023-04-08
  • 2012-06-27
  • 1970-01-01
相关资源
最近更新 更多