JTree dom4j 重写 getTreeCellRendererComponent时的问题

大写的池 2010-04-01 03:40:45
将XML显示到JTree上以编辑

相关代码如下 此处Node

import org.dom4j.Element;
import org.dom4j.Node;
错误异常:
javax.swing.tree.DefaultMutableTreeNode cannot be cast to org.dom4j.Node
请达人提供解决方法


public class treeCellRender extends JLabel implements TreeCellRenderer {

@Override
public Component getTreeCellRendererComponent(JTree tree, Object value,
boolean selected, boolean expanded, boolean leaf, int row,
boolean hasFocus) {
// TODO Auto-generated method stub
Node node=(Node) value;
this.setText(((Element)node).getText().toString());
if(selected){

this.setForeground(new Color(0,0,255));
}else{
this.setForeground(new Color(0,0,0));
}
return this;
}

}
...全文
121 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
vurten 2010-11-28
  • 打赏
  • 举报
回复
貌似楼上说的
shijianhao 2010-11-28
  • 打赏
  • 举报
回复
public Component getTreeCellRendererComponent(JTree tree, Object value,
boolean selected, boolean expanded, boolean leaf, int row,
boolean hasFocus) 这里的Value是DefaultMutableTreeNode类型,如果将它转为 Node(你的类)当然不行了啊。Node node =(Node)((DefaultMutableTreeNode)value).getUserObject();这样。getUserObject()获取节点中我们自己的对象。
大写的池 2010-04-06
  • 打赏
  • 举报
回复
当然是类型转换错误,

有什么解决的方法没?
  • 打赏
  • 举报
回复
类型转换错误

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧