【发布时间】:2023-04-11 08:01:01
【问题描述】:
setMinSize() 是否适用于 GridPane 等容器?我发现在我的程序中GridPane 忽略了最小值。手动调整大小时的大小属性。
这是 FXML 代码:
<GridPane fx:id="gp" prefHeight="134.0" prefWidth="238.0" xmlns:fx="http://javafx.com/fxml" fx:controller="javafxapplication12.SampleController">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints>
</GridPane>
和控制器类
public class SampleController implements Initializable {
@FXML
private GridPane gp;
@Override
public void initialize(URL url, ResourceBundle rb) {
gp.setMaxWidth(700);
gp.setMinSize(200, 200);
}
}
这里有什么问题?是否应该有某种“窗口”最大/最小尺寸?
【问题讨论】:
-
您如何将网格窗格添加到场景中?网格窗格的父布局容器在这里很重要。一些容器布局他们的孩子,而另一些则没有。