如果你是用java的话查看javax.swing.JTree应该是没有问题的。不知你在jCreator是用的什么类。如果你没有用过JTree的话,你可以学习下面的文章
http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html

解决方案 »

  1.   

    还有人帮我解决吗?急啊
    veijerd你的代码能给我一份吗
      

  2.   

    我前几天刚用过的,觉得没有什么分别。
    import javax.swing.JTree;
    import javax.swing.tree.DefaultMutableTreeNode;
    import javax.swing.event.TreeSelectionListener;
    import javax.swing.event.TreeSelectionEvent;
    import javax.swing.tree.TreeSelectionModel;
    import java.net.URL;
    import java.io.IOException;
    import javax.swing.JEditorPane;
    import javax.swing.JScrollPane;
    import javax.swing.JSplitPane;
    import javax.swing.JFrame;
    import java.awt.*;
    import java.awt.event.*;public class TreeDemo extends JFrame {
        private JEditorPane htmlPane;
        private static boolean DEBUG = false;
        private URL helpURL;    //Optionally play with line styles.  Possible values are
        //"Angled", "Horizontal", and "None" (the default).
        private boolean playWithLineStyle = false;
        private String lineStyle = "Angled";     public TreeDemo() {
            super("TreeDemo");        //Create the nodes.
            DefaultMutableTreeNode top = new DefaultMutableTreeNode("The Java Series");
            createNodes(top);        //Create a tree that allows one selection at a time.
            final JTree tree = new JTree(top);
            tree.getSelectionModel().setSelectionMode
                    (TreeSelectionModel.SINGLE_TREE_SELECTION);        //Listen for when the selection changes.
            tree.addTreeSelectionListener(new TreeSelectionListener() {
                public void valueChanged(TreeSelectionEvent e) {
                    DefaultMutableTreeNode node = (DefaultMutableTreeNode)
                                       tree.getLastSelectedPathComponent();                if (node == null) return;                Object nodeInfo = node.getUserObject();
                    if (node.isLeaf()) {
                        BookInfo book = (BookInfo)nodeInfo;
                        displayURL(book.bookURL);
                        if (DEBUG) {
                            System.out.print(book.bookURL + ":  \n    ");
                        }
                    } else {
                        displayURL(helpURL); 
                    }
                    if (DEBUG) {
                        System.out.println(nodeInfo.toString());
                    }
                }
            });        if (playWithLineStyle) {
                tree.putClientProperty("JTree.lineStyle", lineStyle);
            }        //Create the scroll pane and add the tree to it. 
            JScrollPane treeView = new JScrollPane(tree);        //Create the HTML viewing pane.
            htmlPane = new JEditorPane();
            htmlPane.setEditable(false);
            initHelp();
            JScrollPane htmlView = new JScrollPane(htmlPane);        //Add the scroll panes to a split pane.
            JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
            splitPane.setTopComponent(treeView);
            splitPane.setBottomComponent(htmlView);        Dimension minimumSize = new Dimension(100, 50);
            htmlView.setMinimumSize(minimumSize);
            treeView.setMinimumSize(minimumSize);
            splitPane.setDividerLocation(100); //XXX: ignored in some releases
                                               //of Swing. bug 4101306
            //workaround for bug 4101306:
            //treeView.setPreferredSize(new Dimension(100, 100));         splitPane.setPreferredSize(new Dimension(500, 300));        //Add the split pane to this frame.
            getContentPane().add(splitPane, BorderLayout.CENTER);
        }    private class BookInfo {
            public String bookName;
            public URL bookURL;
            public String prefix = "file:" 
                                   + System.getProperty("user.dir")
                                   + System.getProperty("file.separator");
            public BookInfo(String book, String filename) {
                bookName = book;
                try {
                    bookURL = new URL(prefix + filename);
                } catch (java.net.MalformedURLException exc) {
                    System.err.println("Attempted to create a BookInfo "
                                       + "with a bad URL: " + bookURL);
                    bookURL = null;
                }
            }        public String toString() {
                return bookName;
            }
        }    private void initHelp() {
            String s = null;
            try {
                s = "file:" 
                    + System.getProperty("user.dir")
                    + System.getProperty("file.separator")
                    + "TreeDemoHelp.html";
                if (DEBUG) {
                    System.out.println("Help URL is " + s);
                }
                helpURL = new URL(s);
                displayURL(helpURL);
            } catch (Exception e) {
                System.err.println("Couldn't create help URL: " + s);
            }
        }    private void displayURL(URL url) {
            try {
                htmlPane.setPage(url);
            } catch (IOException e) {
                System.err.println("Attempted to read a bad URL: " + url);
            }
        }    private void createNodes(DefaultMutableTreeNode top) {
            DefaultMutableTreeNode category = null;
            DefaultMutableTreeNode book = null;        category = new DefaultMutableTreeNode("Books for Java Programmers");
            top.add(category);        //original Tutorial
            book = new DefaultMutableTreeNode(new BookInfo
                ("The Java Tutorial: Object-Oriented Programming for the Internet",
                "tutorial.html"));
            category.add(book);        //Tutorial Continued
            book = new DefaultMutableTreeNode(new BookInfo
                ("The Java Tutorial Continued: The Rest of the JDK",
                "tutorialcont.html"));
            category.add(book);        //JFC Swing Tutorial
            book = new DefaultMutableTreeNode(new BookInfo
                ("The JFC Swing Tutorial: A Guide to Constructing GUIs",
                "swingtutorial.html"));
            category.add(book);        //Arnold/Gosling
            book = new DefaultMutableTreeNode(new BookInfo
                ("The Java Programming Language", "arnold.html"));
            category.add(book);        //FAQ
            book = new DefaultMutableTreeNode(new BookInfo(
                "The Java FAQ", "faq.html"));
            category.add(book);        //Chan/Lee
            book = new DefaultMutableTreeNode(new BookInfo
                ("The Java Class Libraries: An Annotated Reference",
                 "chanlee.html"));
            category.add(book);        //Threads
            book = new DefaultMutableTreeNode(new BookInfo
                ("Concurrent Programming in Java: Design Principles and Patterns",
                 "thread.html"));
            category.add(book);        category = new DefaultMutableTreeNode("Books for Java Implementers");
            top.add(category);        //VM
            book = new DefaultMutableTreeNode(new BookInfo
                ("The Java Virtual Machine Specification",
                 "vm.html"));
            category.add(book);        //Language Spec
            book = new DefaultMutableTreeNode(new BookInfo
                ("The Java Language Specification",
                 "jls.html"));
            category.add(book);
        }    public static void main(String[] args) {
            JFrame frame = new TreeDemo();
     
            frame.addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });  
     
            frame.pack();
            frame.setVisible(true);
        }
    }