javaFX如何用Button实现跳转到一个已创建的fxml界面

JavaFX中设置某个Button的事件为打开另外一个窗口,如何设置这个窗口为我已经创建好的fxml文件?即如何直接通过Button调用另外一个我已经创建好的界面?

可以在“按钮点击事件”中写上读取fmxl为节点对象
Parent root = FXMLLoader.load(getClass().getResource("fxml_example.fxml"));

然后把父节点放入某个new Scene(root,320,200);
然后在显示在所用的舞台stage上。追问

"显示在所用的舞台stage上"是什么意思呢?不明白。。。

追答

JavaFX 2.x的所有控件都是在stage上显示,最上层的stage由底层平台提供。
比如Application提供,或者Swing接口JFXPanel提供。
读取fxml后产生的节点Node需要放在一个场景Scene中,而场景Scene要放在某个舞台stage上。
舞台stage由平台(Application, Swing, SWT)产生和提供

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-16
Parent root = FXMLLoader.load(getClass().getResource("/fxml/dh.fxml"))//getResource(“”)里面是fxml的地址
Stage dh=new Stage();//新建Stage
dh.setTitle("菜单导航");//给舞台赋予名称
Scene scene = new Scene(root, 600, 400);
dh.setScene(scene);
dh.show();//打开新的窗口
//获取当前按钮所在的窗口,其中login是按钮的fx:id
Stage main = (Stage) login.getScene().getWindow();
//关闭窗口
main.close();
相似回答