我读过一篇: 了JavaFx 2.x的-摇摆:未对外汇应用程序线程
参照“异常在线程‘AWT-EventQueue的-0’java.lang.IllegalStateException:工具包未初始化”
我发现这里讨论的JavaFX 2.1:工具包未初始化
但我不能够使用该解决方案
“Istantiate JFXPanel在Swing事件分派线程:”
因为它停留不确定的时间等待。
我使用的JDesktopPane内的JInternalFrame有你同样的问题。
我试过了:
final CountDownLatch latch = new CountDownLatch(1);
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
final JFXPanel javafxPanel = new JFXPanel();
latch.countDown();
BorderPane pane = new BorderPane();
javafxPanel.setScene( new Scene(pane) {
Text text = new Text("Hello World");
});
frame.getContentPane().add(javafxPanel, BorderLayout.CENTER);
}
});
this.add(frame);
try {
latch.await();
} catch (InterruptedException ex) {
System.out.println("err");
Logger.getLogger(WorkspacePanel.class.getName()).log(Level.SEVERE, null, ex);
}
当帧是JInternalFrame的,这是一个JDesktopPane中。
任何帮助吗? 提前致谢。