我正在创建一个使用嵌套FXML节点的应用。它们使用
之类的结构连接到父控制器中的父节点@FXML
private AnchorPane nestedNodeConnector;
,我像这样附上孩子:
AnchorPane child = createNestedAnchorPaneWithTableViewInside();
nestedNodeConnector.getChildren().setAll((AnchorPane)child);
代码有点简化,但我希望自己解释得足够多。现在我的问题是我正在尝试加载(作为子节点)一个尽可能大的AnchorPane,其中包含一个锚定的TableView。但是我不能让它工作,因为TableView维度永远不会粘在父节点上(为了随窗口大小而增长)。
我能够在没有嵌套孩子的情况下使其工作,但我真的必须在单独的FXML文件中加载TableView。有什么建议?我认为我的方法创造了一个AnchorPane"孩子"在AnchorPane" nestedNodeConnector"中,它会破坏锚属性。
答案 0 :(得分:1)
我所要做的只是锚定孩子AnchorPane(给父母AnchorPane):
AnchorPane child = createNestedAnchorPaneWithTableViewInside();
AnchorPane.setTopAnchor(child, 10.0);
AnchorPane.setBottomAnchor(child, 10.0);
AnchorPane.setLeftAnchor(child, 10.0);
AnchorPane.setRightAnchor(child, 10.0);
nestedNodeConnector.getChildren().setAll((AnchorPane)child);