MyDefaultTreeCellRenderer.java import java.awt.Component; import java.util.Vector; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JTree; import javax.swing.SwingConstants; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeCellRenderer; public class MyDefaultTreeCellRenderer extends DefaultTreeCellRenderer { //设置图片和文字 ImageIcon userIcon = null; // @jve:decl-index=0: String str = null; // @jve:decl-index=0: JLabel label = new JLabel(); public MyDefaultTreeCellRenderer() { } /** * @author yyy * 重载getTreeCellRendererComponent,设置图标和文本 * @param tree * @param value * @param selected * @param expanded * @param leaf * @param row * @param hasFocus * @return Compenent */ public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { super.getTreeCellRendererComponent(tree,value,selected,expanded,leaf,row,hasFocus); DefaultMutableTreeNode node=(DefaultMutableTreeNode)value; if(node.isLeaf()&&node.getParent().toString().equals("用户")) { userIcon =new ImageIcon("home.gif"); str = node.toString(); label.setIcon(userIcon); label.setText(str); return label; } if(node.isLeaf()&&node.getParent().toString().equals("组")) { userIcon =new ImageIcon("1.gif"); str = node.toString(); label.setIcon(userIcon); label.setText(str); return label; } return this; } }