Página 5
Obtener todos los fotogramas de una imagen
Página 6
Índice
See this article in english  Ver este artículo en español 
 

Expandir o Colapsar por completo un JTree

Alexander Hristov

La siguientes dos rutinas permiten expandir o colapsar por completo un árbol JTree. Por desgracia, la única forma de hacerlo es recorriendo el árbol recursivamente y procediendo a expandir o colapsar los nodos en profundidad.

TreeState.java
 
import javax.swing.JTree;
import javax.swing.tree.TreePath;

public class TreeState {
  public static void setTreeState(JTree tree, boolean expanded) {
    Object root = tree.getModel().getRoot();
    setTreeState(tree, new TreePath(root),expanded);
  }
  
  public static void setTreeState(JTree tree, TreePath path, boolean expanded) {
    Object lastNode = path.getLastPathComponent();
    for (int i = 0; i < tree.getModel().getChildCount(lastNode); i++) {
      Object child = tree.getModel().getChild(lastNode,i);
      TreePath pathToChild = path.pathByAddingChild(child);
      setTreeState(tree,pathToChild,expanded);
    }
    if (expanded) 
      tree.expandPath(path);
    else
      tree.collapsePath(path);
      
    
  }
}

 


Código Fuente



 

Comentarios

 

Añadir Comentario

Nombre (opcional)
EMail (opcional, no se muestra)

Texto