0

私はJavaスイングフォームとjavafx FXMLステージを使用しているJavaアプリケーションに取り組んでいます。このようなボタンをクリックすると、swing フォームからの fxml ステージ---- Application.launch(MyFxml.class);

これは問題なく動作しますが、次の方法でボタンをクリックして fxml ステージからスイング フォームに戻り、javafx fxml ステージにアクセスしようとすると、例外が発生します。 new MySwingform().setVisible(true);

次のコード スニペットは、スイング フォームを呼び出すために使用されます---

    public void goBack(ActionEvent ev){

    Platform.exit();

    new MySwingform().setVisible(true);
}

私が取得している例外は、「アプリケーションの起動を複数回呼び出す必要はありません」です。エラーなしでjavafxアプリケーションスレッドを何度も実行できるように、これを取り除く方法は?提案。

4

1 に答える 1

4

Swingアプリケーション内で JavaFX コンポーネントを表示するには、新しい fx アプリケーションを起動する代わりに、それらを JFxPanelに配置する必要があります。

反対のことを行う (swing コンポーネントを Java FX アプリケーション内に埋め込む) には、Java FX 8 の SwingNodeが必要です。

于 2013-09-21T14:15:04.800 に答える