Я прочитал сообщение: JavaFx 2. x — Swing: не в потоке приложения FX
со ссылкой на «Исключение в потоке» AWT-EventQueue-0» java.lang.IllegalStateException: Toolkit не инициализирован»
Я нашел здесь обсуждение JavaFX 2.1: Toolkit не инициализирован
но я не могу использовать решение
«Инициировать JFXPanel в потоке диспетчера событий Swing:»
потому что это остается неопределенным временем ожидания.
У меня такая же проблема с использованием JInternalFrame внутри JDesktopPane.
Я пробовал:
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.
Любая помощь ? Заранее спасибо.