社区
Java SE
帖子详情
如何为jtree的不同结点加不同的图标
amekoxiao
2004-12-16 04:50:55
我已经实现了相同级别的结点加不同的图标
现在求如何为所有的结点分别加不同的图标
...全文
343
3
打赏
收藏
如何为jtree的不同结点加不同的图标
我已经实现了相同级别的结点加不同的图标 现在求如何为所有的结点分别加不同的图标
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tomcatjava
2004-12-16
打赏
举报
回复
法一:扩展DefaultTreeCellRenderer,我的实现如下:
/**
* Customizes tree cell renderer.
*
* @version $version 1.0
* @author yuch
* @date 2004-7-2
*/
import java.awt.Component;
import java.awt.Font;
import java.awt.Color;
import java.net.URL;
import javax.swing.ImageIcon;
import javax.swing.JTree;
import javax.swing.tree.DefaultTreeCellRenderer;
public class MyTreeCellRenderer extends DefaultTreeCellRenderer {
public MyTreeCellRenderer() {
}
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 );
setBackgroundNonSelectionColor( new Color( 245,209,135 ) );
setBackgroundSelectionColor( Color.red );
setBorderSelectionColor( Color.green );
URL urlOpen = MyTreeCellRenderer.class.getClassLoader().getResource( "resource/images/openfold.gif" );
URL urlClose = MyTreeCellRenderer.class.getClassLoader().getResource( "resource/images/closedfold.gif" );
URL urlLeaf = MyTreeCellRenderer.class.getClassLoader().getResource( "resource/images/leaf.gif" );
setOpenIcon( new ImageIcon(urlOpen) );
setClosedIcon( new ImageIcon(urlClose) );
setLeafIcon( new ImageIcon(urlLeaf) );
//这个地方可以自己设定条件,什么条件显示什么样的字体,Icon什么的
Font font = getFont();
if( !leaf ) {
setFont( font.deriveFont( Font.BOLD ) );
}
else {
setFont( font.deriveFont( Font.ITALIC ) );
}
return this;
}
}
FGS
2004-12-16
打赏
举报
回复
参考Icon,很容易的。
liangfengxx
2004-12-16
打赏
举报
回复
恩,我也在搞这个东东,帮你顶
考虑电动汽车灵活性的微网多时间尺度协调调度研究(Matlab代码实现)
考虑电动汽车灵活性的微网多时间尺度协调调度研究(Matlab代码实现)
易语言源码易语言QQ帐号自动申请源码
易语言源码易语言QQ帐号自动申请源码
(顶刊复现)基于非线性反步法和Lyapunov-MPC模型预测的自主水下航行器轨迹跟踪控制(包括fossen动力学模型)
(顶刊复现)基于非线性反步法和Lyapunov-MPC模型预测的自主水下航行器轨迹跟踪控制(包括fossen动力学模型)
五艘无人艇分布式协同围捕编队控制仿真系统理论分析(Matlab代码实现)
五艘无人艇分布式协同围捕编队控制仿真系统理论分析(Matlab代码实现)
易语言源码易语言QQ密保卡选取显示源码
易语言源码易语言QQ密保卡选取显示源码
Java SE
62,622
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章