如何在 javafx 中将参数传递给 fxml 控制器类的构造函数



如何在fxml控制器类构造函数中传递参数?

public void start(Stage primaryStage) throws Exception{
    Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
    primaryStage.setTitle("Online Poker");
    primaryStage.setScene(new Scene(root, 800, 400));
    primaryStage.show();
}
不能

直接将参数传递到 FXMLLoader 控制器构造函数中,而是从 FXMLLoader 实例获取控制器,并在控制器上调用方法以使用参数对其进行初始化。

FXMLLoader loader = new FXMLLoader(getClass().getResource("sample.fxml"));
Parent root = loader.load();
ViewController viewController = loader.<ViewController>getController();
viewController.initParameter(parameter);

如果我从启动方法猜对了,这是应用程序的一个实例。尝试以下文档:

this.getParameters();

(这是假设您想访问术语"构造函数"所暗示的应用程序参数)

最新更新