【发布时间】:2017-02-10 01:25:01
【问题描述】:
在 Java 中,我可以使用 sleep(x) 将某些代码的运行延迟 x 秒。但是,如果我使用 Swing,这会使我的 GUI 冻结,所以它不是一个理想的解决方案。
如何在 Java 中运行一系列代码之前产生延迟?
【问题讨论】:
-
您的代码是如何设置的?您是否像应有的那样使用 SwingWorker 线程? docs.oracle.com/javase/tutorial/uiswing/concurrency/worker.html
-
@Brick 我不是,因为我正在制作一个非常简单的程序,只是试图延迟标签的更改(不是繁重的后台任务)。我确实自己弄清楚了,我在下面发布了自己的答案。
-
这个问题和this popular question of mine几乎一模一样,只是我说的是java而不是swift。
-
典型的 Swing 解决方案是使用 Swing Timer。您发布的解决方案过于复杂,具有潜在危险,因为它可能会在事件线程之外运行 Swing 代码,因此不建议将其作为本网站的答案。