import javax.swing.JFrame; import javafx.application.Platform; import javafx.embed.swing.JFXPanel; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.ColorPicker; import javafx.scene.layout.BorderPane; public class TestSwingInterop extends JFrame { public TestSwingInterop() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JFXPanel fxPanel = new JFXPanel(); add(fxPanel); Platform.runLater(new Runnable() { @Override public void run() { initFX(fxPanel); } }); } private static void initFX(JFXPanel fxPanel) { // This method is invoked on JavaFX thread Scene scene = createScene(); fxPanel.setScene(scene); } private static Scene createScene() { ColorPicker picker = new ColorPicker(); BorderPane.setAlignment(picker, Pos.TOP_LEFT); BorderPane p = new BorderPane(picker); return new Scene(p); } public static void main(String[] args) { TestSwingInterop s = new TestSwingInterop(); s.setBounds(100, 100, 1000, 800); s.setVisible(true); } }