首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要Java TimerTask <identifier>

需要Java TimerTask <identifier>
EN

Stack Overflow用户
提问于 2013-05-17 02:25:08
回答 1查看 487关注 0票数 0

为什么java总是给我这个错误?我已经阅读了多种使用计时器的方法,所有的方法都给了我预期的错误,我已经尝试了一段时间了。

代码语言:javascript
复制
     private class buttonRowColumn implements ActionListener
     {
           Button cell;
           Timer timer = new Timer();
           myTask t = new MyTask();
           timer.schedule(t, 0, 500);
           public buttonRowColumn(Button cell)
           {
                this.cell = cell;
           }
           public void actionPerformed(ActionEvent e)
           {
               System.out.println("row = "+cell.getRow()+", column="+cell.getColumn());
               cell.button.setBackground(Color.red);
               while(cell.checkClicked() == false || cell.getRow() < 5)
               {
                    cell = buttons[0][cell.getColumn()];
                    if(cell != buttons[5][cell.getColumn()])
                    {
                         cell.button.setBackground(Color.red);
                          run();
                    }
                     timer.cancel();
                    cell.setClicked(true);
              }

           }
           public class MyTask extends TimerTask
           {
               public void run()
               {
                   cell.setBackground(null);
                   cell = buttons[cell.getRow() + 1][cell.getColumn()];
               }
          }
     }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-17 02:29:06

作为非声明语句,如下所示

代码语言:javascript
复制
myTask t = new MyTask();
timer.schedule(t, 0, 500);

应该在一个方法中。您可以简单地将它们移到actionPerformed方法中:

代码语言:javascript
复制
public void actionPerformed(ActionEvent e) {
    myTask t = new MyTask();
    timer.schedule(t, 0, 500);
    ...
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16594741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档