首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >getChildren() add()和add()

getChildren() add()和add()
EN

Stack Overflow用户
提问于 2019-04-28 00:21:58
回答 1查看 931关注 0票数 0

为什么有时我们使用getChildren() add(),而有时我们直接使用add() es:https://docs.oracle.com/javafx/2/get_started/form.htm

代码语言:javascript
复制
Example 4–4 Button
Button btn = new Button("Sign in");
HBox hbBtn = new HBox(10);
hbBtn.setAlignment(Pos.BOTTOM_RIGHT);
hbBtn.getChildren().add(btn);
grid.add(hbBtn, 1,`enter code here`
grid.add(userTextField, 1, 1);
Label pw = new Label("Password:");
grid.add(pw, 0, 2);
PasswordField pwBox = new PasswordField();
grid.add(pwBox, 1, 2);)

示例4-3控件

代码语言:javascript
复制
Text scenetitle = new Text("Welcome");
scenetitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 20));
grid.add(scenetitle, 0, 0, 2, 1);
Label userName = new Label("User Name:");
grid.add(userName, 0, 1);
TextField userTextField = new TextField();
EN

回答 1

Stack Overflow用户

发布于 2019-04-28 01:28:03

Afaik only GridPane直接提供了add方法。此方法的存在是为了缩短向中添加子对象所需的代码,并分配行/列索引(以及列/行跨度)。您需要为GridPane的几乎所有子级分配行/列索引,这就是为什么这些方法很有用。

代码语言:javascript
复制
gridPane.add(child1, column1, row1);

gridPane.add(child2, column2, row2, columnSpan, rowSpan);

远短于

代码语言:javascript
复制
GridPane.setColumnIndex(child1, column1);
GridPane.setRowIndex(child1, row1);
gridPane.getChildren().add(child1);

GridPane.setColumnIndex(child2, column2);
GridPane.setRowIndex(child2, row2);
GridPane.setColumnSpan(child2, columnSpan);
GridPane.setRowSpan(child2, rowSpan);
gridPane.getChildren().add(child2);

其他布局(如VBox )不提供这种方法,因为子布局是根据子列表中的顺序定位的,并且分配可选布局参数(如margin )的频率较低。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55882531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档