JTree节点仅显示面板

时间:2018-03-27 17:11:31

标签: java swing jtree

我有一个带有几个标签的JTabbedPane。在每个标签内,我有一个带有jtree的JScrollpane。每个jtree节点都是另一个面板,包含由函数返回的其他组件。这很好。

问题在于:
在第一次显示树(所有这些)时,根节点不会完全显示。只有上半部分显示。当双击它们时,如果它们有子节点,它们会正确显示,如果它们没有发生任何事情。

我找不到第一次正确显示节点的方法。我尝试了无效,验证油漆,重绘等几种组合。 什么都行不通。

1 个答案:

答案 0 :(得分:0)

发现它!

    ScrollPaneContainigTheTabel.setColumnHeader(new JViewport() 
    {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;

        @Override public Dimension getPreferredSize() 
        {
          Dimension d = super.getPreferredSize();
          d.height = WHATEVER_HEIGHT_IS_NEEDED;
          return d;
        }
    });

强制表头高度解决了问题... 现在它正确地重新计算尺寸......

WHATEVER_HEIGHT_IS_NEEDED可以是int或计算值,如果您使用(如我所做)html在标题中设置多行...