Светлый фон

А для инициализации и изменения Swing-интерфейса используется метод SwingUtilities.invokeLater.

Обратную операцию – встраивание Swing компонентов в JavaFX приложение позволяет класс SwingNode пакета embed. swing.

 

 

Здесь мы создаем некий Swing контент, который устанавливаем в узел SwingNode методом setContent.

Делаем мы это в Swing потоке Event Dispatch Thread.

И затем используем этот узел уже в потоке JavaFX Application Thread.

Аналогично пакету embed. swing, пакет embed. swt платформы JavaFX обеспечивает встраивание JavaFX-сцены в SWT-приложение.

 

 

Для этого пакет embed. swt предоставляет компонент FXCanvas.

Класс FXCanvas расширяет класс Canvas пакета swt. widgets графической библиотеки SWT, обеспечивающий рисование произвольной графики.

Класс FXCanvas имеет, помимо унаследованных от класса Canvas, публичные методы, в том числе метод setScene, устанавливающий JavaFX сцену.

JavaFX-сцена вставляется в FXCanvas-компонент, а FXCanvas-компонент вставляется в SWT-окно Shell с помощью приведенного здесь шаблона кода.

О библиотеке SWT мы поговорим позже.

Язык FXML

Язык FXML

Платформа JavaFX представляет альтернативный Java-коду способ создания графа сцены JavaFX-приложения с помощью языка FXML, являющегося декларативным языком, основанным на языке XML.