我开发了一个用于创建和提取存档的Java应用程序 - 例如WinRAR。您可以使用多线程同时创建多个存档。最近,我想在创建档案的过程中以JProgressBar的形式在每次创建时在新的JFrame中添加信息状态。在多任务应用程序中管理GUI和EDT
但我的问题是在新的状态框架和创建存档的线程中生成信息。这就是为什么我在归档线程中创建JFrame来更新当前的进度条。
但是就像我可以在不同的信息源和你的答案/评论中阅读它,这是针对Java Swing和性能;我无法在EDT的其他地方创建摆动物体。
但是,那么,我该如何解决我的问题?如何建立我的档案的写入和其状态JFrame(使用JProgressBar)之间的通信?
编辑:
我实现的SwingWorker来管理我的应用程序的GUI。现在完成了,我还有其他问题:
使用SwingWorker时,如何在状态为Frame的按钮的事件上对后台任务执行操作? (实施例:暂停压缩或停止它。)在一个JDialog
+1如果你对Swing有最深的了解 – mKorbel
我真的忘了问你,你知道一些关于http://stackoverflow.com/questions/7053865/cant-get-arrayindexoutofboundsexception-from-future-and-swingworker-如果线程 – mKorbel
@mKorbel不,但我会学习。我想它谈论的是摆动工作者的配合。 – damson