【发布时间】:2016-12-13 17:45:20
【问题描述】:
我将在 Java FX GridPane 布局的一行中添加两个文本字段。我想在整个可用空间中填充一个文本字段。如果我将 GridPane 直接添加到场景中,那么它工作正常。但如果我将 GridPane 添加到另一个布局,如 Group(或任何其他布局),则填充属性无法正常工作。
以下代码按预期工作。
public void start(final Stage stage) {
GridPane parent = new GridPane();
TextField addEmail = new TextField();
TextField addFirstName = new TextField();
parent.add(addEmail, 0, 0);
parent.add(addFirstName, 1, 0);
ColumnConstraints cons1 = new ColumnConstraints();
cons1.setFillWidth(true);
cons1.setHgrow(Priority.ALWAYS);
parent.getColumnConstraints().add(cons1);
Scene scene = new Scene(parent, 400, 300, Color.WHITE);
stage.setScene(scene);
stage.show();
}
跟随一个不工作(但我想让这个工作)。
public void start(final Stage stage) {
GridPane parent = new GridPane();
TextField addEmail = new TextField();
TextField addFirstName = new TextField();
parent.add(addEmail, 0, 0);
parent.add(addFirstName, 1, 0);
ColumnConstraints cons1 = new ColumnConstraints();
cons1.setFillWidth(true);
cons1.setHgrow(Priority.ALWAYS);
parent.getColumnConstraints().add(cons1);
Group group = new Group();
group.getChildren().addAll(parent);
Scene scene = new Scene(group, 400, 300, Color.WHITE);
stage.setScene(scene);
stage.show();
}
我是 Java FX 的新手,因此我的方法可能完全错误,请引导我找到正确的路径。
【问题讨论】: