2014-11-02 62 views
0

我有一个使用的Swing在Java 7中我演示类做一些耗时的任务和事件后,我查看/ GUI只是调用演示的方法上的被动MVP架构构建的应用程序。演示者调用视图的方法来更新GUI。如何在Java中制作响应式MVP Swing GUI?

显然,我不希望长时间运行的任务就EDT发生。

我首先想到的是使用一个SwingWorker的,但因为它只有一个doInBackground方法,我想我会实现的SwingWorker在演示每一个方法。 或者我会吗?

是否有一种简单的方法可以让EDT在其他工作线程上运行View和GUI(即Presenter的逻辑没有调用更新View)?

回答

1

你可以创建你在现场的SwingWorker并在SwingWorker的包装每个主持人的代码,并调用它,沿着命令设计模式的线。当然,魔鬼将在细节,包括你的代码,我们没有现在的细节信息。