【发布时间】:2012-07-01 16:03:56
【问题描述】:
我加载它的第一阶段总是以全屏方式正确打开。
stage.setFullScreen(true);
stage.setScene(login_scene);
但是当我更改为另一个 FXML 时,应用程序保持全屏显示(没有顶部工具栏..),但实际视图内容会在 FXML 的根 AnchorPane 的 prefWidth/prefHeight 上调整大小(我可以在右下角看到桌面角:|),我希望它对我的屏幕分辨率是动态的。
谢谢。
@稍后编辑:
因此,在我的主类的启动方法中,我加载了一个场景(从 FXML 文档创建)并将其设置为舞台(启动方法参数)。我保存这个阶段供以后使用。
当我按下与之前保存的相同阶段的按钮时,我将场景更改为另一个 FXML 文档
@屏幕截图:
http://tinypic.com/r/2079nqb/6 - 第一个场景正常工作 - 代码来自主类的 start override 方法
@Override
public void start(Stage stage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("Sample.fxml"));
stage.setScene(new Scene(root));
stage.setFullScreen(true);
stage.show();
currentStage = stage;
}
http://tinypic.com/r/szfmgz/6 - 重新加载第二个场景后 - 下面的代码来自示例控制器类
@FXML
private void handleButtonAction(ActionEvent event) throws IOException {
Parent root = FXMLLoader.load(getClass().getResource("Sample.fxml"));
JavaFXApplication12.currentStage.setScene(new Scene(root));
}
【问题讨论】:
-
你的第一阶段是初级阶段吗?附上屏幕截图(2 个用于 2 种不同情况)可能会有所帮助。
-
@UlukBiy 上传了屏幕截图 - 请您看一下...在简短版本中,它将 prefWidth/prefHeight 视为全屏尺寸。如果没有好的解决方案,你知道我怎么知道屏幕尺寸吗?
标签: java layout fullscreen javafx fxml