如何在 NetBeans SWING 中的循环中使用 Thread.sleep?
Posted
技术标签:
【中文标题】如何在 NetBeans SWING 中的循环中使用 Thread.sleep?【英文标题】:How to use Thread.sleep in a loop within NetBeans SWING? 【发布时间】:2014-07-01 13:52:57 【问题描述】:我正在 NetBeans 中制作一个装饰性的 SWING GUI 程序,只是为了和朋友一起玩,它涉及一个加载屏幕,实际上只需要几毫秒,但我希望它需要几秒钟才能完成,这就是我我正在尝试使用 Thread.sleep() 。加载是一个 For-Loop,我知道你必须抛出 InterruptedException 但由于它是用 NetBeans GUI 构建器制作的,你不能添加它,我试过只是复制并粘贴到另一个项目中,但它只是想出了错误。所以我的问题是如何让 Thread.sleep() 工作,或者是否有其他方法可以导致程序暂停。谢谢
编辑:基本上...如何让循环暂停每个间隔,以便五个循环间隔需要五秒钟。
【问题讨论】:
这就是 GUI 构建器的问题。如果你使用它们,你必须遵守它们的规则。 欢迎来到 Stack Overflow!你的问题真的很难理解;我不确定您要解释什么问题。如果您包含您现在拥有的代码并且简洁准确地说明您遇到的问题,您将获得更好的答案。 【参考方案1】:从不在 Swing GUI 应用程序中使用 Thread.sleep()
。或者使用 Swing Timers 来实现相同的行为。
请看一下How to Use Swing Timers
阅读更多关于Thread.Sleep alternative in Java
您可以通过两种方式使用 Swing 计时器:
延迟执行一次任务。
例如,工具提示管理器使用 Swing 计时器来确定何时显示工具提示以及何时隐藏它。
重复执行一项任务。
例如,您可以执行动画或更新显示目标进度的组件。
【讨论】:
以上是关于如何在 NetBeans SWING 中的循环中使用 Thread.sleep?的主要内容,如果未能解决你的问题,请参考以下文章
NetBeans 中的 Java Swing Jscrollpane