我知道可以调用 LaunchImpl 但它需要一个 args 数组,因此在 main 之外它对于 Reststart 来说是无用的,但如果我只使用 Application 类的 init() 和 start() ,则 Preloader 类就不是不再工作了。
使用 init()
和 start()
但预加载器当然不会重新启动。
primaryStage.close();
Platform.runLater(() -> {
try {
final JavaFXApplication javaFXApplication = new JavaFXApplication();
javaFXApplication.init();
javaFXApplication.start(new Stage());
} catch (Exception e) {
e.printStackTrace();
}
});
最佳答案
实例化应用程序后,您需要通过调用 Application#notifyPreloader
通知您的预加载器
。在你的情况下,这看起来像:
javaFXApplication.notifyPreloader(new Preloader.ProgressNotification(0));
这当然适用于其他 Preloader.PreloarderNotification
实例。
关于java - 如何使用 Preloader 重新启动 JavaFX 中的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56759975/