2009-11-09 24 views

回答

1
  1. 從圖像中創建一個ImageIcon

    ImageIcon的圖標= ....; (there are a number of ways to do this

  2. 創建DefaultTreeCellRenderer的實例

    DefaultTreeCellRenderer渲染=新DefaultTreeCellRenderer();

  3. 設定渲染器

    renderer.setLeafIcon(圖標)的葉圖標字段;

  4. 設置樹的渲染

    tree.setCellRenderer(渲染);

if you can't figure it out try the demo

+0

添加到上面的回答: 如果你正在尋找設置文本(基本上,沒有一個圖標)的右側的圖像,你仍然需要創建自己的DefaultTreeCellRenderer實例返回組件其中包括圖像 – Thimmayya 2009-11-11 06:14:25

0

您可以使用自定義葉渲染器。 重寫getTreeCEllRendererComponent()方法。

渲染組件時。

使用面板,首先放置文本,圖標按照文本。

然後返回組件。

public Component getTreeCellRendererComponent(JTree tree, Object value, 
     boolean selected, boolean expanded, boolean leaf, int row, 
     boolean hasFocus) { 


    JLabel l = (JLabel)renderer.getTreeCellRendererComponent(
      tree, "", true, expanded, leaf, row, true); 
    Component com = renderer.getTreeCellRendererComponent(
      tree, "", true, expanded, leaf, row, true); 
    l.setIcon(YOUR_IMAGE); 
    l.setText(value.toString()); 



     panel.removeAll(); 
     panel.add(this, BorderLayout.EAST); 
     panel.add(j); 
     return panel; 



}