javafx 在添加二级阶段时保留 root
javafx retain root while adding a secondary stage
我有一个不断增长的应用程序,它的菜单栏包含主页、章节、计算器、词汇表和帮助。一切正常,包括包含 14 个项目的章节。
还有源码包的计算器。它打开了,但我失去了舞台。我希望它可以打开并可以在屏幕上拖动。
这是我使用的代码:
else if(e.getSource()==mbarcalculator){
stage = (Stage) root.getScene().getWindow();
root = FXMLLoader.load(getClass().getResource("/javafxcalc/FXMLcalc.fxml"));
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
我已经阅读了很多帖子,但没有找到一个简单的答案。
经过大量的耐心和毅力,我找到了一个可行的解决方案,并且我可以理解。
else if(e.getSource()==mbarcalculator){
阶段 secondaryStage = new Stage();
父 root2 = FXMLLoader.load(getClass().getResource("/javafxcalc/FXMLcalc.fxml"));
场景 scene2 = new Scene(root2);
secondaryStage.setScene(场景2);
secondaryStage.show();
}
我从 Jose Pereda 的回答中摘取了一小段代码 Display two windows at the same time "on fullscreen" with JavaFx Scene Builder 2.0
我已经测试过了,效果很好。
我有一个不断增长的应用程序,它的菜单栏包含主页、章节、计算器、词汇表和帮助。一切正常,包括包含 14 个项目的章节。
还有源码包的计算器。它打开了,但我失去了舞台。我希望它可以打开并可以在屏幕上拖动。
这是我使用的代码:
else if(e.getSource()==mbarcalculator){
stage = (Stage) root.getScene().getWindow();
root = FXMLLoader.load(getClass().getResource("/javafxcalc/FXMLcalc.fxml"));
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
我已经阅读了很多帖子,但没有找到一个简单的答案。
经过大量的耐心和毅力,我找到了一个可行的解决方案,并且我可以理解。
else if(e.getSource()==mbarcalculator){
阶段 secondaryStage = new Stage();
父 root2 = FXMLLoader.load(getClass().getResource("/javafxcalc/FXMLcalc.fxml"));
场景 scene2 = new Scene(root2);
secondaryStage.setScene(场景2);
secondaryStage.show();
}
我从 Jose Pereda 的回答中摘取了一小段代码 Display two windows at the same time "on fullscreen" with JavaFx Scene Builder 2.0
我已经测试过了,效果很好。