从舞台返回值

时间:2013-09-23 11:24:19

标签: javafx

在javaFX中,我通过以下代码打开一个新阶段:

    Parent root2 ;
    root2 = FXMLLoader.load(getClass().getResource("FXMLelencoSoci.fxml"));
    Scene scena = new Scene(root2, 800, 800);
    final Stage stage2 = new Stage();
    stage2.initStyle(StageStyle.UNDECORATED);
    stage2.initModality(Modality.WINDOW_MODAL);
    stage2.initOwner(((Node) event.getSource()).getScene().getWindow());
    stage2.setScene(scena);
    stage2.show();

这显示一个包含2个colums code(int)和name(string)的表 如何从调用者阶段获取表中所选代码的值? 谢谢

2 个答案:

答案 0 :(得分:2)

这是一个解决方案......绝对不是最好的解决方案...... 您可以使用root2的UserData。 从FXMLelencoSoci的控制器,将用户数据设置为它的主窗格。 这可以通过以下方式实现:

mainPane.setUserData(value);

从主阶段,您知道此窗格为root2,因此请使用:

value = root2.getUserData();

这就是你想要的方式......但是我会让两个控制器互相认识,这样你仍然可以使用Tiped参考。

答案 1 :(得分:0)

我使用static int variabile set closing stage2创建一个类,并在stage1的showAndWait方法结束时读取