3

我开始使用 JavaFX 并希望使用新的树视图(因为您可以使用多个图标来表示您的数据 - 这是我希望利用的)。

我创建了一个基本的表单/场景,上面有一个树视图和一个按钮。按下此按钮时,我希望填充树视图。

现在,我查看的所有示例都是在代码中生成表单/场景的位置,并且树视图绑定到该控件....如何使用 Scene builder 获得预先设计的表单并从外部代码填充它?

4

2 回答 2

3

您可以在控制器类中使用以下代码。在 FXML 文件中,您需要将 FXID 设置为 selectionTreeView。在 JDK 8u5 中测试,它工作。

@FXML
TreeView selectionTreeView;
@FXML
private void handleButtonAction(ActionEvent event) {
    createTree();
}

public void createTree(String... rootItems) {
    //create root
    TreeItem<String> root = new TreeItem<>("Root");
    //root.setExpanded(true);
    //create child
    TreeItem<String> itemChild = new TreeItem<>("Child");
    itemChild.setExpanded(false);
    //root is the parent of itemChild
    root.getChildren().add(itemChild);
    selectionTreeView.setRoot(root);
}
于 2014-04-21T20:58:14.890 回答
0

在场景构建器中设置控件的根节点上的类名(包括包)。如果单击,则转到右侧的代码选项卡,它是顶部字段。

现在在控件中的 TreeView 上设置一个 ID。

现在在控制器对象中添加一个 TreeView 字段,变量名称应该与您在场景构建器中设置的 TreeView ID 相同。使用@FXML 对字段进行注释。

现在,当加载 FXML 时,将创建控制器并设置 TreeView 字段。

于 2012-09-16T16:34:07.700 回答