【发布时间】:2016-07-21 09:11:55
【问题描述】:
如何在应用程序 javafx 的 start 方法中传递参数? 事实上,我在另一个类中调用我的 javafx 应用程序:
mainController.getMainApp().launch(MainApp.class);
在我的启动方法下面:
@Override
public void start(Stage primaryStage) {
this.primaryStage = primaryStage;
this.primaryStage.setTitle("CLS");
this.primaryStage.initStyle(StageStyle.UNDECORATED);
// here the page fxml to load
问题是我不知道我将在我的启动方法中加载的页面 fxml 是什么。我的另一个班谁知道。 所以我想在我的方法中传递参数开始知道我将加载什么 fxml 页面。
请帮忙。
谢谢。
【问题讨论】:
-
我认为您对 JavaFX 应用程序的生命周期有些误解。
Application类仅代表整个应用程序,并调用start()方法来启动它:将start()视为实质上main()的替代品。因此,在调用start()时应该可用的唯一数据是从命令行传递给应用程序的命令行参数。除了传递给start()方法的阶段之外,此时内存中应该没有其他可访问的对象。