2010-02-24 31 views

回答

2

使用DefaultTreeCellRenderer使用setClosedIcon,setOpenIconsetLeafIcon

How to Use Trees複製:

ImageIcon leafIcon = createImageIcon("images/middle.gif"); 
if (leafIcon != null) { 
    DefaultTreeCellRenderer renderer = 
    new DefaultTreeCellRenderer(); 
    renderer.setLeafIcon(leafIcon); 
    tree.setCellRenderer(renderer); 
} 
0

如果你想要做的是有封閉的節點,葉和開節點不同的圖標,這是非常簡單的。

//創建3個圖標 private Icon customOpenIcon = new ImageIcon(「images/my_open.gif」); 私人圖標customClosedIcon =新的ImageIcon( 「圖像/ my_closed.gif」); 私人圖標customLeafIcon =新的ImageIcon( 「圖像/ my_leaf.gif」);

//假設您創建DefaultMutableTreeNode層次 DefaultMutableTreeNode根節點=新... ... JTree的 樹=新的JTree(根節點);

DefaultTreeCellRenderer customRenderer = new DefaultTreeCellRenderer(); 
customRenderer.setOpenIcon(customOpenIcon); 
customRenderer.setClosedIcon(customClosedIcon); 
customRenderer.setLeafIcon(customLeafIcon); 
tree.setCellRenderer(customRenderer); 
+0

我試圖使用DefautTreeCellRenderer,但我的類does not recognaize它,我使用eclipse 3.2 – samuel 2010-02-24 16:50:39