使用Scene Builder创建JavaFX TreeView

时间:2012-09-15 15:57:10

标签: java javafx treeview

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

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

现在,我看过的所有示例都是在代码中生成表单/场景的地方,树视图绑定到该控件....如何使用“场景”构建器创建预先设计的表单并从外部代码填充它?

2 个答案:

答案 0 :(得分: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);
}

答案 1 :(得分:0)

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

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

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

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