【问题标题】:Counting clicks in a jButton array计算 jButton 数组中的点击次数
【发布时间】:2016-08-11 18:19:03
【问题描述】:

我正在尝试计算一组按钮中的鼠标点击次数,但我的“点击”变量出现错误,我不太明白:

“在封闭范围内定义的局部变量点击必须是最终的或有效的最终”

我猜这与我安排 for 循环和 actionListener 的方式有关。有人可以指导我正确的方向吗?谢谢。

int click = 0;

JButton buttonArray1 [] = {a1, a2, a3, a4,  b1, b2, b3, b4, c1, c2, c3, c4, d1, d2, d3, d4};

for (int d = 0; d < buttonArray1.length; d++) {
      buttonArray1[d].addActionListener(new ActionListener() {
      //add an action listener to the current button
       @Override
       public void actionPerformed(ActionEvent e) 
       {
           click = click +1;

       }
      }); 

已解决:

   class Click{
                    int counter = 0 ;     
                    public void Click(){
                       counter++;
                    }
                    public int GetClick(){
                        return counter;

                    }
                }

【问题讨论】:

    标签: java for-loop scope jbutton


    【解决方案1】:

    click定义为类变量...

    原因是actionPerformed是回调接口实现...

    所以你有两个选择

    1. click 设为最终(没有意义,因为您无法更改其值)
    2. 或将 click 声明为类变量...(这是您的情况)

    【讨论】:

    • 如何在循环中实现类变量?
    猜你喜欢
    • 1970-01-01
    • 2023-04-10
    • 1970-01-01
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-26
    相关资源
    最近更新 更多