摆动计时器的问题

时间:2016-03-20 03:41:13

标签: java swing timer

我正在创建一个速度阅读器,所以我使用swingx.Timer对象来显示给定时间的单词。我将时间设置为1秒进行测试。我之前有代码工作,但在关闭eclipse之后再回到它,代码不再起作用了。计时器不会调用actionlistener,因此不会执行它应该执行的操作。这是我的代码。我读了其他问题,谈论计时器是守护程序线程并以main结尾。但是我不认为我的代码就是这种情况,但我可能错了。有人可以帮我指出我的错误吗?

factor

1 个答案:

答案 0 :(得分:4)

timer.stop() Actions方法结束时删除actionPerformed ...

public class Actions implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
        String source = e.getActionCommand();//read the button asking for the request

        if (source.equals("Reset")) {
            textPad.setText("");
            if (timer.isRunning()) {
                timer.stop();
            }
        } else if (source.equals("Start")) {
            //first read the speed selected and set the speed 
            setSpeed(speedText.getText());
            startReader();
        } else if (source.equals("Stop")) {
            i = 0;
        }
        // This is stopping the timer AFTER it was already started
        //timer.stop();
    }
}