我有2个.fxml文件(stage1.fxml和stage2.fxml)及其控制器类。
我在stage1.fxml中有一个按钮,单击该按钮会打开stage2.fxml,上面有此代码:
public void btnStage2(ActionEvent event) {
try {
Parent stage2 = FXMLLoader.load(getClass().getResource("/application/stage2.fxml"));
Stage stage = new Stage();
stage.setScene(new Scene(stage2));
stage.show();
} catch(Exception e) {
e.printStackTrace();
}
这可以很好地打开stage2
,但是stage1
仍然是打开的,我可以跳入该菜单并在该阶段中仍使用按钮,但我不希望这样。
打开stage2.fxml之前按stage1
时如何设置btnStage2
为.Visible(false)?
我发现其他有关“隐藏”舞台而不是在按下关闭按钮时关闭舞台的帖子,但这与我的需求不符。感谢您的帮助!
Stage stage1= (Stage) btnStage2.getScene().getWindow();
stage1.close();
[以前,我认为我不能在一个函数中调用多个Stage
。原来我错了。