2017-07-07 5 views
0

JavaFXコントローラを使用してJava Swing GUIフォームをロードします。これは、JavaFXファイルでボタンをクリックした後、Swing GUIフォームをロードする必要があります。JavaFXコントローラを使用してSwing GUIフォームをロードする方法(JavaFXのボタン)

通常の方法でSwing GUIフォームを読み込もうとしましたが、動作しませんでした。

Example ex=new Example; 
ex.setVisible(true); 

答えて

0

具体的にお聞きしたいことがありますか? 次のコードを正常に実行しました。

@FXML 
private void handleButtonAction(ActionEvent event) { 
    SwingUtilities.invokeLater(new Runnable() { 

     @Override 
     public void run() { 
      // TODO Auto-generated method stub 
      JFrame frame = new JFrame("FrameDemo"); 

      // 2. Optional: What happens when the frame closes? 
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

      // 3. Create components and put them in the frame. 
      // ...create emptyLabel... 
      frame.getContentPane().add(new JLabel("Test"), BorderLayout.CENTER); 

      // 4. Size the frame. 
      frame.pack(); 

      // 5. Show it. 
      frame.setVisible(true); 
     } 
    }); 
} 

handleButtonActionは、JavaFXプロジェクトのコントローラクラスの関数です。

別のウィンドウを作成するか、SwingをJavaFXウィンドウに埋め込みたいですか?

+0

@ James_D AWTイベントディスパッチスレッドにコードを追加する答えを更新しました。これはあなたの懸念に適切に対応していますか? – gabe870

+0

それは動作します。 –

関連する問題