启动JavaFX FXML中最大化的应用程序窗口无法正常工作
我希望我的Javafx FXML应用程序开始最大化,因此在我的阶段中使用了方法启动JavaFX FXML中最大化的应用程序窗口无法正常工作,java,javafx,javafx-8,fxml,Java,Javafx,Javafx 8,Fxml,我希望我的Javafx FXML应用程序开始最大化,因此在我的阶段中使用了方法setMaximized(true) 程序以最大化方式打开没有问题,但问题是在窗口出现之前,应用程序启动时有一个小的黑色区域会闪烁半秒钟 下面是我描述的一段录音(gif): 我发现问题出在场景中,因为它试图在prefWidth和prefHeight中打开,然后它会放大以适应舞台。 如何修复此问题并使程序像正常程序一样启动 下面是我的start()方法: 我发现的唯一解决办法是: @Override public vo
setMaximized(true)
程序以最大化方式打开没有问题,但问题是在窗口出现之前,应用程序启动时有一个小的黑色区域会闪烁半秒钟
下面是我描述的一段录音(gif):
我发现问题出在场景中,因为它试图在prefWidth和prefHeight中打开,然后它会放大以适应舞台。
如何修复此问题并使程序像正常程序一样启动
下面是我的start()方法:
我发现的唯一解决办法是:
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("editor.fxml"));
primaryStage.setTitle("Simple Text Editor");
primaryStage.setScene(new Scene(root));
primaryStage.setMinWidth(450);
primaryStage.setMinHeight(300);
Screen screen = Screen.getPrimary();
Rectangle2D bounds = screen.getVisualBounds();
primaryStage.setWidth(bounds.getWidth());
primaryStage.setHeight(bounds.getHeight());
primaryStage.setMaximized(true);
primaryStage.show();
}
如果构建一个发行版(.exe./.jar)并运行它,会发生什么?如果故障仍然存在,请尝试在新线程(例如Platform.runLater())中调用“primaryStage.show()”。是的,运行jar时也会发生同样的情况。在“Platform.runLater()”中调用“primaryStage.show()”也没有改变任何事情代码>,而不是白色和黑色的矩形,它显示了一个突然最大化的小窗口。
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("editor.fxml"));
primaryStage.setTitle("Simple Text Editor");
primaryStage.setScene(new Scene(root));
primaryStage.setMinWidth(450);
primaryStage.setMinHeight(300);
Screen screen = Screen.getPrimary();
Rectangle2D bounds = screen.getVisualBounds();
primaryStage.setWidth(bounds.getWidth());
primaryStage.setHeight(bounds.getHeight());
primaryStage.setMaximized(true);
primaryStage.show();
}