2014-11-02 33 views
0

我有一個使用的Swing在Java 7中我演示類做一些耗時的任務和事件後,我查看/ GUI只是調用演示的方法上的被動MVP架構構建的應用程序。演示者調用視圖的方法來更新GUI。如何在Java中製作響應式MVP Swing GUI?

顯然,我不希望長時間運行的任務就EDT發生。

我首先想到的是使用一個SwingWorker的,但因爲它只有一個doInBackground方法,我想我會實現的SwingWorker在演示每一個方法。 或者我會嗎?

是否有一種簡單的方法可以讓EDT在其他工作線程上運行View和GUI(即Presenter的邏輯沒有調用更新View)?

回答

1

你可以創建你在現場的SwingWorker並在SwingWorker的包裝每個主持人的代碼,並調用它,沿着命令設計模式的線。當然,魔鬼將在細節,包括你的代碼,我們沒有現在的細節信息。