gpt4 book ai didi

java - 拍摄物体后如何停止定时器功能?

转载 作者:行者123 更新时间:2023-11-29 08:12:13 24 4
gpt4 key购买 nike

我正在制作一个简单的打靶游戏。我在标签内有一个倒数计时器,在面板内的随机位置有一个闪烁的对象。每次我点击对象时,。对象的计时器停止,这使得该对象也停止,但倒数计时器没有,这是我的问题。我希望倒数计时器也应该停止。

有人可以帮我解决这个问题吗?

代码如下:

 private void starting()
{
new Timer(TIMER_PERIOD, new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
if (count++ < MAX_COUNT)
{
String text = "Time remaining: (" + (MAX_COUNT - count) + ") seconds left";
setCountDownLabelText(text);
Date date = new Date();
setCountDownPanelText(date);

}
else
{
((Timer) e.getSource()).stop();
randomTimer.stop();
JOptionPane.showMessageDialog(null, "Game Over");
System.exit(0);
}
}
}).start();
}

最佳答案

令我震惊的是,您根本不了解代码,您不知道创建的匿名类正在扩展 Timer ,它(如果您看过文档)有一个函数 stop() 可以完成您的要求。

您需要存储对计时器的引用。

private javax.swing.Timer timer;

private void starting() {
timer = new Timer(TIMER_PERIOD, new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
// do stuff

// stop the timer
timer.stop();

// do other stuff
}
}
}

关于java - 拍摄物体后如何停止定时器功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7512377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com