gpt4 book ai didi

java - Swing 计时器不工作(Java)

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

出于某种原因,即使我使用的是来自 Oracle 网站的 Swing Timer 的确切代码示例,它也没有等待 1 秒。它只是跳到说“你的分数是等等”的 JOptionPane。

这是我的一个学校项目的源代码。为什么这不起作用并且在运行其余代码之前不等待 1 秒?

//Check to see if user has enetered anything
if(!answered)
{
int delay = 1000; //milliseconds
ActionListener taskPerformer = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
//...Perform a task...
}
};
new Timer(delay, taskPerformer).start();
afk = true;
incorrect += 1;
answered = true; //This breakes it out of the loop
}

最佳答案

计时器用于在特定时间后运行回调。如果您只是想延迟,您可以将要在延迟后运行的代码移到 taskPerformer Action 监听器中。

Thread.sleep(1000) 在这里并不理想,因为它会导致 UI 完全卡住,因为您将使 UI 线程 hibernate 。

关于java - Swing 计时器不工作(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30949374/

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