当前位置: 技术问答>java相关
请问怎样设置JTree对象的图标
来源: 互联网 发布时间:2015-08-31
本文导语: 请问怎样设置JTree对象的图标 | 有不同的办法: 1.利用UIManager类, Icon openIcon = new ImageIcon("open.gif"); Icon closeIcon = new ImageIcon("close.gif"); Icon leafIcon= new ImageIcon("leaf.gif"); UIManager.put("Tree.clo...
请问怎样设置JTree对象的图标
|
有不同的办法:
1.利用UIManager类,
Icon openIcon = new ImageIcon("open.gif");
Icon closeIcon = new ImageIcon("close.gif");
Icon leafIcon= new ImageIcon("leaf.gif");
UIManager.put("Tree.closeIcon",closeIcon);
UIManager.put("Tree.openIcon",openIcon);
UIManager.put("Tree.leafIcon",leafIcon);
JTree tree = new JTree();
//注意,UIManager必须在new被new出来之前。
//这样是设置了整个缺省值。不够灵活
2.利用TreeCellRenderer。
这里又可以分为两个办法,第一,利用
DefaultTreeCellRenderer renderer =new DefaultTreeCellRenderer ();
renderer.setClosedIcon(closeIcon);
renderer.setOpenIcon(openIcon);
renderer.setLeafIcon(leafIcon);
renderer.setFont(new Font());//自己定义字体
这样比较简单。
第二。如果想自己时刻控制tree的图标,或者说tree的图标希望能动态根据情况来改变的话,需要自己扩展DefaultTreeCellRenderer,
实现getTreeCellRendererComponent()
方法,这里可以根据tree的具体情况,来实现图标,字体颜色,甚至节点的绘制方式。比如你在树节点上放置一个checkBox之类等等。
总之,看看java2图形技术卷II swing.
第21章,有详细说明.
1.利用UIManager类,
Icon openIcon = new ImageIcon("open.gif");
Icon closeIcon = new ImageIcon("close.gif");
Icon leafIcon= new ImageIcon("leaf.gif");
UIManager.put("Tree.closeIcon",closeIcon);
UIManager.put("Tree.openIcon",openIcon);
UIManager.put("Tree.leafIcon",leafIcon);
JTree tree = new JTree();
//注意,UIManager必须在new被new出来之前。
//这样是设置了整个缺省值。不够灵活
2.利用TreeCellRenderer。
这里又可以分为两个办法,第一,利用
DefaultTreeCellRenderer renderer =new DefaultTreeCellRenderer ();
renderer.setClosedIcon(closeIcon);
renderer.setOpenIcon(openIcon);
renderer.setLeafIcon(leafIcon);
renderer.setFont(new Font());//自己定义字体
这样比较简单。
第二。如果想自己时刻控制tree的图标,或者说tree的图标希望能动态根据情况来改变的话,需要自己扩展DefaultTreeCellRenderer,
实现getTreeCellRendererComponent()
方法,这里可以根据tree的具体情况,来实现图标,字体颜色,甚至节点的绘制方式。比如你在树节点上放置一个checkBox之类等等。
总之,看看java2图形技术卷II swing.
第21章,有详细说明.