2013-09-23 70 views
0

我有兩個單獨的代碼,一個是:
SwingUtilities/Platform .runLater和有什麼不一樣?

Platform.runLater(new Runnable() { 
     public void run() { 

     } 
    }); 

另一種是

 SwingUtilities.invokeLater(new Runnable() { 
     public void run() { 
     } 
    }); 

我想知道這兩者之間的區別是,當使用一個或另一個或者如果他們的意思完全一樣的話。謝謝你的幫助!

回答

4

Platform來自JavaFX框架,SwingUtilities(代表EventQueue)來自Swing框架。

區別是基於兩個框架如何處理事件分派之間的差異。

每個人都會使用一個線程來執行他們的事件派發角色,這表明JavaFX正在使用與Swing不同的線程。

你應該使用JavaFX和與Swing打交道時SwingUtilities打交道時使用Platform.runLater ...

看看JavaFX Architecture,這可能提供的更清楚了,尤其是Glass Windowing Toolkit

相關問題