从另一个内部打开另一个JavaFX应用程序?

时间:2014-09-29 16:29:10

标签: java javafx-2 fxml

我正在尝试在已经打开的应用程序之上打开另一个应用程序。换句话说,我有一个初始的应用程序做的东西,我在窗口上有一个按钮,当点击时,应该打开另一个窗口,其中包含性能和内存统计信息。

现在是我不确定该做什么的部分。我有一个监听器来检查单击按钮的时间,但是如何让它加载另一个FXML类(app?)。

两个app类都在不同的包中。

1 个答案:

答案 0 :(得分:0)

我这样做是为了在一个手风琴窗口中加载多个FXML文件,除了你把它附加到一个新的舞台上之外,这个过程是相同的。而不是使用TitledPane的.setContent()方法(我以tp_开头的任何变量都是TitledPanes):

    tp_edit_perm.setContent(FXMLLoader.load(getClass().getResource("fxml/edit_window.fxml")));
    tp_report_pane.setContent(FXMLLoader.load(getClass().getResource("fxml/report_window.fxml")));
    tp_manual_pane.setContent(FXMLLoader.load(getClass().getResource("fxml/manual_license_window.fxml")));
你会是这样的:

        Stage new_stage = new Stage();
        Parent root;
        root = FXMLLoader.load(getClass().getResource("fxml/some_fxml.fxml"));

        Scene scene = new Scene(root);

        new_stage.setScene(scene);


        new_stage.show();   

你只需要在按钮监听器中执行此操作并切换' fxml / some_fxml.fxml'无论你在哪里调用fxml。