我尝试了以下 2 种方法来设置 JavaFX 中 AnchorPane 的 minHeight 和 minWidth(使其在 1280x720 下无法调整大小):
从控制器类(从 login-view.fxml 中的按钮调用,该按钮具有相同的高度和宽度的最小值和最大值,但仅在本地,并且不会将任何内容传输到 admin-view.fxml)。
root、stage、scene在LoginController中声明,但它们不是
root = FXMLLoader.load(getClass().getResource("admin-view.fxml"));
stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
scene = new Scene(root);
stage.setScene(scene);
stage.setMinHeight(scene.getRoot().minHeight(-1));
stage.setMinWidth(scene.getRoot().minWidth(-1));
和
stage.setMinHeight(720);
stage.setMinWidth(1280);
并在 admin-view.fxml 中
<VBox maxHeight="720.0" maxWidth="1280.0" minHeight="720.0" minWidth="1280.0" ...>
<children>
<VBox VBox.vgrow="ALWAYS" />
<AnchorPane maxHeight="720.0" maxWidth="1280.0" minHeight="720.0" minWidth="1280.0">
... my code here ...
<VBox VBox.vgrow="ALWAYS" />
</children>
<VBox>
(我选择了相同的最小值和最大值,因为我在教程中看到这应该可行)。
但我的问题是窗口的大小以 1280x720 加载,但它的大小可以调整为 ~1260x690。