jTree的问题,怎么换掉jTree中难看的展开图标-----“圈中间一个点”,把它换成自己的图标,如
+-

解决方案 »

  1.   

    DefaultTreeCellRenderer 中有两个方法
    setOpenIcon(Icon newIcon) 
    setClosedIcon(Icon newIcon)之后用JTree.setCellRenderer(TreeCellRenderer x) 
    把 DefaultTreeCellRenderer对象安装上
      

  2.   

    import java.awt.BorderLayout;import javax.swing.*;public class TreeIconTest
    {
    public static void main(String[] args)
    {
    Icon icon1 = new ImageIcon("C:/icon1.png");
    Icon icon2 = new ImageIcon("C:/icon2.png");
    UIManager.put("Tree.collapsedIcon", icon1);
    UIManager.put("Tree.expandedIcon", icon2); JTree tree = new JTree();
    JScrollPane sp = new JScrollPane(tree);
    JFrame f = new JFrame();
    f.getContentPane().add(sp, BorderLayout.CENTER);
    f.pack();
    f.setLocationRelativeTo(null);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setVisible(true);
    }
    }
      

  3.   

    String laf = UIManager.getSystemLookAndFeelClassName();
                UIManager.setLookAndFeel(laf);