|
1
4
看来你可以利用 SwingWorker 编辑:示例 这里有一个更复杂的例子,展示了如何使用SwingWorker的基础知识,以及如何发布/处理中间结果。
|
|
|
2
4
在新线程中运行时,请确保任何GUI更新都使用invokeAndWait或最好使用invokeLater返回EDT。 要记住的简单规则:
|
|
|
3
1
您不应该在事件线程中访问inputStream。生成一个新线程,它实际执行handleDownload()的大部分工作,然后使该线程执行的最后一个操作是调用SwingUtilities.invokeLater(),并使用实际显示和填充对话框的代码。 |
|
|
4
1
“手动下载”是做什么的?不应该在事件调度程序线程中执行耗时的操作。如果事件调度器线程中的某个东西占用了大量CPU周期,那么显示将冻结,直到完成为止。在这样的情况下,调用普通线程(不使用SwingUtilities)在事件调度程序线程之外进行处理,并在该线程中使用SwingUtilities.invokeLater定期发送已更改的通知(如更新进度条),这样的情况要好得多。 |
|
|
5
1
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |