javaSE笔记

(1)为treeNode节点添加鼠标监听器

DefaultMutableTreeNode task = new DefaultMutableTreeNode("任务");
DefaultMutableTreeNode downing = new DefaultMutableTreeNode("正在下载");
DefaultMutableTreeNode downfail = new DefaultMutableTreeNode("下载失败");
DefaultMutableTreeNode downfinish = new DefaultMutableTreeNode("下载完成");


task.add(downing);
task.add(downfail);
task.add(downfinish);
JTree tree = new JTree(task);
model = (DefaultTreeModel) tree.getModel();
tree.setShowsRootHandles(true);
tree.setEditable(true);

MouseListener m1 = new MouseAdapter()
{
public void mousePressed(MouseEvent e)    //通常三个要素:事件源、事件、监听器,其中事件通常使用
{
/*
movepath = tree.getSelectionPath();
//TreeNode target = (TreeNode) movepath.getLastPathComponent();
TreeNode tn = (TreeNode) movepath.getLastPathComponent();
DefaultMutableTreeNode target = (DefaultMutableTreeNode)tn;
System.out.println(target.getSiblingCount());
*/
DefaultMutableTreeNode target = (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
System.out.println("兄弟结点的个数:"+target.getSiblingCount());
//System.out.println("是否是子节点?"+target.isNodeChild(target));
}
};
tree.addMouseListener(m1);

JScrollPane navJSPane = new JScrollPane(tree);       //将tree当做组件赋给JScrollPane

}


(二)设置树节点文字类型、边框、图片的CellRender类

zaowuzhu.add(rulai);
zaowuzhu.add(guanyin);
zaowuzhu.add(yudi);
rulai.add(sunwukong);
guanyin.add(taishanglaojun);
yudi.add(tianbing);

DefaultTreeCellRenderer cellRender = new DefaultTreeCellRenderer();
cellRender.setBackgroundNonSelectionColor(new Color(255,255,255));
cellRender.setBackgroundSelectionColor(new Color(180,250,140));
//设置选中状态节点边框的颜色
cellRender.setBorderSelectionColor(new Color(140,40,104));
//设置处于折叠状态非子叶节点的图标
cellRender.setClosedIcon(new ImageIcon("image/close.gif"));
//设置节点文本的字体
cellRender.setFont(new Font("SansSerif",Font.BOLD,16));
//设置叶子节点的图标
cellRender.setLeafIcon(new ImageIcon("image/leaf.png"));
//设置处于展开状态下非叶子节点的图标
cellRender.setOpenIcon(new ImageIcon("image/open.gif"));
//设置绘制非选中状态下节点文本的颜色
//cellRender.setTextNonSelectionColor(new Color(255,0,0));
//设置绘制选中状态下节点文本的颜色
//cellRender.setTextSelectionColor(new Color(0,0,255));


JTree tree1 = new JTree(zaowuzhu);

tree1.setCellRenderer(cellRender);
tree1.setShowsRootHandles(true);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值