1
TreeModel model = new TreeModel() {

    Node[] sillyTree =  {

        new Node("X", new Node[] {
           new Node("Child 1", new Node[] {
           }),
           new Node("Child 2", new Node[] {
           }),
           new Node("Child 3", new Node[] {
           }),
       }),
       new Node("Y", new Node[] {
           new Node("A", new Node[] {
           })
       }),
       new Node("Z", new Node[] {
           new Node("A", new Node[] {
           }),
       }),
    };

我想以动态方式创建一个节点,在静态plz帮助的示例代码之上

4

2 回答 2

0

这可能会有所帮助 -

class Node {
    Vector children;
    String value;   // Name of the node….

    public Node(String value, Vector children) {
        this.children = children;
        this.value = value;
    }

    public String toString() {
        return value;
    }
}

和 -

  Node[] nodeArray = generateRootNode(); 

  TreeModel model = new TreeModel() {

  Node[] sillyTree = nodeArray;

                public Vector getChildren(Object parent) {
                    Node n = (Node) parent;
                    Object[] nodes = null;
                    Vector v = new Vector();
                    if (parent == null) {
                        nodes = sillyTree;
                    } else {
                        v = n.children;
                    }
                    if (nodes != null) {
                        for (int iter = 0; iter < nodes.length; iter++) {
                            v.addElement(nodes[iter]);
                        }
                    }
                    return v;
                }

                public boolean isLeaf(Object node) {
                    boolean returnValue = false;
                    try {
                        Node n = (Node) node;
                        returnValue = n.children == null || n.children.size() == 0;
                    } catch (ClassCastException ex) {
                        // It means its a child node or a leaf...
                            returnValue = true;
                    }
                    return returnValue;
                }
            };
于 2011-05-13T13:32:56.943 回答
0

请参阅 UIDemo 应用程序中的TreeDemo类。这里从文件根动态检索值并将该值添加到向量中。请参阅 TreeDemo 类中的 FileTreeModel 内部类。您可以按照相同的方式添加动态值。

于 2011-02-03T12:32:13.980 回答