モジュール javafx.swing
パッケージ javafx.embed.swing

クラスJFXPanel

  • すべての実装されたインタフェース:
    ImageObserver, MenuContainer, Serializable

    public class JFXPanel
    extends JComponent
    JFXPanelはJavaFXコンテンツをSwingアプリケーションに埋め込むためのコンポーネントです。 表示されるコンテンツはsetScene(javafx.scene.Scene)メソッドで指定し、このメソッドはJavaFX Sceneのインスタンスを受け入れます。 シーンは、割り当てられた後、自動的に再ペイントされます。 すべての入力イベントとフォーカス・イベントは、開発者に対して透過的にシーンに転送されます。

    JFXPanelに関連する制限があります。 Swingコンポーネントであるため、イベント・ディスパッチ・スレッドからのみアクセスする必要があります。ただし、setScene(javafx.scene.Scene)メソッドはイベント・ディスパッチ・スレッドまたはJavaFXアプリケーション・スレッドから呼び出すことができ、この例外となります。

    JFXPanelを使用できる方法の標準的なパターンを次に示します。

         public class Test {
    
             private static void initAndShowGUI() {
                 // This method is invoked on Swing thread
                 JFrame frame = new JFrame("FX");
                 final JFXPanel fxPanel = new JFXPanel();
                 frame.add(fxPanel);
                 frame.setVisible(true);
    
                 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);
             }
    
             public static void main(String[] args) {
                 SwingUtilities.invokeLater(new Runnable() {
                     @Override
                     public void run() {
                         initAndShowGUI();
                     }
                 });
             }
         }
     
    導入されたバージョン:
    JavaFX 2.0
    関連項目:
    直列化された形式