所需输出:我想检查计时器的运行状况,并根据该状态运行一些代码。
我有以下代码......
if (spin2 == spin3 && timer1.stop()==true)
{
lblMessage.setText("Congratulations. You matched 2 symbols");
credit = credit + 50;
lblCredit2.setText(credit + " ");
lblCredit2.setForeground(new Color(11,212,0));
timer1.stop();
timer2.stop();
timer3.stop();
}
但是,timer1.stop()== true不起作用。我需要一个替代方案......
想法:
当我调用start()或stop()时,更改布尔值是否是接近计时器运行条件的最佳方法?还是有另一种解决方案吗?
答案 0 :(得分:1)
<强>解决方案:强>
而不是
timer1.stop()==true //Which isnt even valid because timer.stop doesnt return a boolean
使用
timer1.isRunning(); //It returns a boolean (true or false) if the timer is running or not.
当计时器正在运行时返回True。
当计时器未运行时返回False。
如果您参考API,这将是一个简单的修复。
继承人:
https://docs.oracle.com/javase/7/docs/api/javax/swing/Timer.html#isRunning()