Zev*_*eso 5 java user-interface jframe
我已经尝试了很多,但似乎无法让它发挥作用.
有人告诉我使用EDT以下例子.
SwingUtilities.invokeLater(new Runnable() {
public void run() {
// Modify the GUI here
}
});
Run Code Online (Sandbox Code Playgroud)
我已经阅读了很多这个主题但仍然不明白.我得到的是一个线程,但.invokeLater对我来说仍然没有意义.老实说,如果你能详细解释一下这将是一个很大的帮助!
程序目标:获取随后每秒创建的随机生成的密钥,以便在GUI中自动更新.
于是就有了EDT(Event Dispatch Thread)。屏幕上显示的所有操作均由 EDT 执行。每个 Swing 应用程序只有一个 EDT。
您处于某个任意线程中,并且想通过该线程更新 GUI?正如我所说,每个 swing 应用程序只有一个 EDT,因此您必须告诉 EDT 显示标签(或您想要的任何上下文)。
这里的想法是,将此 Runnable 推送到 EDT 从中提取的队列中。最终,当您的可运行对象之前的所有其他操作完成后,EDT 将处理您的可运行对象。
| 归档时间: |
|
| 查看次数: |
13232 次 |
| 最近记录: |