开发者社区> 问答> 正文

如何在延迟之前更新JLabel?

当我尝试在代码上使用任何类型的延迟时,程序都会延迟,但是在延迟结束之前放置的JLabel会在程序结束后更新。

我希望程序执行以下操作:

在GUI上更新JLabel 等待5秒钟 用不同的文本再次更新JLabel 再等5秒钟 我尝试过使用计时器,invokelater,invokeandwait,thread.sleep等。

问题在于,GUI确实会在正确的位置延迟,但是GUI不会更新代码所在的JLabel。程序结束后,JLabel将更新。

我希望用户能够阅读文本5秒钟,然后依次阅读另一文本5秒钟。我不希望程序在某个特定位置运行gui暂停,然后最后只需更新JLabel。我希望gui在延迟之前得到更新。我不希望发生这样的事情:使用计时器发生时,在键入计时器之前在JLabel的setText中键入内容,然后在运行程序时计时器起作用,但JLabel在延迟后得到更新(这是不是我想要的)。

展开
收起
垚tutu 2019-11-28 18:42:19 641 0
0 条回答
写回答
取消 提交回答
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载