【发布时间】:2009-08-07 08:30:16
【问题描述】:
我有些不明白:我的 Swing GUI 包含一个“播放”和“暂停”按钮。我还有一个定义“开”和“关”状态的静态变量。 (主程序生成 GUI)。 通过单击“播放”,我将静态变量的状态更改为“打开”,并在一个同时修改 GUI 的线程中启动了一个耗时的过程。只要静态变量为“ON”,就在同一进程中循环。单击“暂停”会将静态变量更改为关闭。 但是通过点击“播放”,GUI 会冻结,因此:
- GUI 不更新
- 无法使用我的“暂停”按钮“暂停”进程。
我听说过 EDT 和 SwingWorker,但你有一个简单的方法可以做到。
感谢您的帮助并原谅我的英语不好...
【问题讨论】:
标签: java multithreading user-interface swing freeze