17

根据文档,Region 和 Pane 都会将任何可调整大小的子节点调整为其首选大小,但不会重新定位它们。

所以我看不出这两个容器之间的差异在哪里以及何时使用一个或另一个。

4

1 回答 1

35

Region是具有子节点的组件的超类。

不同之处在于Region不允许通过公共 API 操纵其子级。该Region.getChildren()方法受保护:

new Region().getChildren().add(...); // doesn't compile
new Pane().getChildren().add(...); // works

这是为什么?

因为Region专用于组件开发人员,它允许他们选择是否要允许 API 用户直接与孩子一起工作(如PaneHBox等)或不允许(如图表)。

于 2012-07-31T18:30:09.190 回答