Как рекурсивно пройти через все узлы TreePath

Я пытаюсь создать метод, который проходит через все узлы пути. он будет использоваться для JTree, а узлами будут файлы и папки. Так что это должно пройти и по папкам.

Вот мой код:

Основная настройка:

DefaultMutableTreeNode root = new DefaultMutableTreeNode();
final DefaultTreeModel treeModel = new DefaultTreeModel(root);

Метод поиска:

public void search(TreePath path){

    Object o = path.getLastPathComponent();
    DefaultMutableTreeNode node = (DefaultMutableTreeNode) o;
    o = node.getUserObject();

    if(!node.isLeaf() && node.getChildCount() >= 0){
        Enumeration e = node.children();
        while (e.hasMoreElements()) {
            search(path.pathByAddingChild(e.nextElement()));
        }
    }
    else{
       node = node.getNextNode();
    }
}

Таким образом, в моем методе я решил указать, является ли узел папкой, затем перейти к нему и выполнить тот же процесс. в противном случае получите следующий узел и так далее. Но это не работает.

Любая идея?

0 ответов

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