所以这就是我遇到的问题:我有3个按钮,当我按下3个按钮中的一个按钮时,将显示新场景。然而,我似乎无法弄清楚如何根据按下哪个按钮使不同的窗格看起来可见。执行此操作的最佳方法是什么?如何使用来自不同场景控制器的Id来更改主场景按钮侦听器中窗格的属性?
当释放每个按钮时,当前在我的主控制器上,下面的动作侦听器执行并显示secondscreen.fxml。 secondscreen.fxml有2个不同的窗格,取决于按下哪个按钮我需要将2个痛苦中的1个设置为可见。
{{1}}
答案 0 :(得分:0)
加载视图后,您可以访问其控制器。
请注意,您的控制器必须与您的fxml文件fx:controller="your.package.SecondScreenController.java"
FXMLLoader loader = new FXMLLoader.load(getClass().getResource("secondscreen.fxml"));
// load view
Parent root = loader.load();
// after view is loaded, access its controller
SecondScreenController controller = (SecondScreenController) loader.getController();
// modify view using methods on your controller
controller.setTabIndex(0)
Stage stage = new Stage();
stage.setScene(new Scene(root));
stage.show();