【发布时间】:2019-11-28 09:56:02
【问题描述】:
当我尝试对我的代码使用任何类型的延迟时,程序会延迟,但在延迟之前放置的 JLabel 在程序结束后会更新。
我希望程序:
- 在 GUI 上更新 JLabel
- 等待 5 秒
- 用不同的文本再次更新 JLabel
- 再等 5 秒
我尝试过使用计时器、invokelater、invokeandwait、thread.sleep 等。
问题在于 GUI 确实在正确的位置延迟,但 GUI 没有更新代码所在位置的 JLabel。 JLabel 在程序结束后得到更新。
我希望用户能够按顺序阅读文本 5 秒,然后再阅读另一个文本 5 秒。我不希望程序在某个地方运行 gui 暂停,然后最后只更新 JLabel。我希望 gui 在延迟之前得到更新。我不希望发生同样的事情,当我使用计时器时,我在键入计时器之前为 JLabel 输入 setText,然后当我运行程序时,计时器工作但 JLabel 在延迟后得到更新(它是不是我想要的)。
【问题讨论】:
-
显示您尝试过的内容。我怀疑事件调度线程的使用不当
-
请在此处添加一些代码以详细了解问题
标签: java