DefaultMutableTreeNode

DefaultMutableTreeNode

为什么JTree不显示?这是我的代码:

    initComponents();
    JTree treeView;
    DefaultMutableTreeNode top = new DefaultMutableTreeNode("myBooks");
    DefaultMutableTreeNode category = new DefaultMutableTreeNode("Drama");
    DefaultMutableTreeNode book1 = new DefaultMutableTreeNode("Macbeth");
    DefaultMutableTreeNode book2 = new DefaultMutableTreeNode("Hamlet");
    category.add(book1);
    category.add(book2);
    top.add(category);
    treeView = new JTree(top);
    JScrollPane pane = new JScrollPane(treeView);
    mainPanel.add(pane);

最佳答案

为了扩展Snicolas的答案(对他的答案是1+),您似乎在将JScrollPane添加到您的mainPanel中,而不考虑所使用的布局管理器。我猜想您的GUI使用的是GroupLayout,如果是这样,建议您使用更用户友好的布局管理器。另外,是否在顶级窗口上调用pack和setVisible(true)之后添加JScrollPane窗格?如果是这样,您将需要重新验证并重新粉刷正在接收新组件的容器。

09-08 10:11