如何显示我的TreeItem层次结构[JavaFX]

时间:2016-02-17 12:55:35

标签: java javafx hierarchy

我有一个关于如何显示我的treeView Hierarchy的问题...例如我有类似的东西......

    • parent1

      • parent1.1

        • child1

        • 的child2

    • parent2

      • parente2.1

如果我双击 child2 ,我想展示类似的东西......

root> parent1> parent1.1> child2

1 个答案:

答案 0 :(得分:0)

获取TreeItem的层次结构不是一项艰巨的任务。只需遍历父节点即可遍历树:

static String createString(TreeItem<String> item) {
    List<TreeItem<String>> hierarchy = new ArrayList<>();
    while (item != null) {
        hierarchy.add(item);
        item = item.getParent();
    }

    // list iterator positioned at the end of the list
    ListIterator<TreeItem<String>> iterator = hierarchy.listIterator(hierarchy.size());

    StringJoiner sj = new StringJoiner(" > ");

    // join Strings in reverse order
    while (iterator.hasPrevious()) {
        sj.add(iterator.previous().getValue());
    }
    return sj.toString();
}

当您收到鼠标事件时双击TreeCell(无论您的意思是&#34;显示&#34; ),使用此选项显示项目。