【发布时间】:2013-06-07 11:41:26
【问题描述】:
我已经组装了一个可以打开文本文件并允许用户编辑它们的应用程序(例如:文本编辑器)
有些文本文件可以任意大,因此打开它们需要一些时间。我添加了一个进度条来通知用户实际发生的事情,并且正在使用一个 swing worker 来执行实际的文件加载,给它一个文本区域的引用来转储所有的文本。
我在主应用程序中还有一个名为isFileLoaded 的标志,如果有文件打开则为真,否则为假。理想情况下,swing worker 应该在完成加载文件并完成它需要做的任何处理后设置该值。
我将 swing worker 编写为一个单独的类,因此它没有嵌套在包含所有 GUI 逻辑的主 Frame 类中,主要是因为我不喜欢纯粹出于审美原因在类中定义类。因此,我目前正在将整个 Frame 的引用传递给 swing worker 并让它设置标志的值。
这是做事的好方法吗?有更好的方法吗?
【问题讨论】:
标签: java swing swingworker