Выбрать все узлы под родительским узлом

Я использую JTree с DefaultSelectionModel. Если щелкнуть левой кнопкой мыши, если узел не является листом, я хочу добавить все находящееся под ним в Путь выбора (узлы должны быть выделены в дереве). Кодекс, с которым я пытаюсь это сделать, приведен ниже и, конечно, не работает. Что я делаю неправильно?

if (!node.isLeaf()) {
                    int childCount = node.getChildCount();
                    System.out.println("SelectionPath= " +itemTree.getSelectionPath());
                    System.out.println("Child Count" + childCount);
                    ArrayList<DefaultMutableTreeNode> nodes = new ArrayList();
                    nodes.add(node);
                    for (int i = 0; i < childCount; i++) {
                        nodes.add((DefaultMutableTreeNode) node.getChildAt(i));
                        // Object userObject = ((DefaultMutableTreeNode) node.getChildAt(i)).getUserObject();
                    }
                    TreePath treePath = new TreePath(nodes.toArray());
                    System.out.println("TreePath= "+treePath);
                    itemTree.getSelectionModel().setSelectionPath(treePath);
                     System.out.println("SelectionPath= "+itemTree.getSelectionPath());
                    }

0 ответов

Другие вопросы по тегам