2013-09-23 48 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

相关问题