如何将JPanel嵌入到JavaFX窗格中以进行图形可视化

时间:2016-02-22 05:17:07

标签: java javafx jpanel jung

如何使用我的控制器类将swingNode添加到特定窗格?

我正在尝试添加一个JPanel来加载使用JUNG软件库创建的网络图,我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

您可以使用SwingNode课程实现您想要的目标。下面是一个示例代码,其中JButton(swing组件)被添加到StackPane(JavaFX组件):

 public class SwingFx extends Application {

     @Override
     public void start(Stage stage) {
         final SwingNode swingNode = new SwingNode();
         createAndSetSwingContent(swingNode);

         StackPane pane = new StackPane();
         pane.getChildren().add(swingNode);

         stage.setScene(new Scene(pane, 100, 50));
         stage.show();
     }

     private void createAndSetSwingContent(final SwingNode swingNode) {
         SwingUtilities.invokeLater(new Runnable() {
             @Override
             public void run() {
                 swingNode.setContent(new JButton("Click me!"));
             }
         });
     }

     public static void main(String[] args) {
         launch(args);
     }
 }

来源:http://download.java.net/jdk8/jfxdocs/javafx/embed/swing/SwingNode.html