JTree总结
来源:互联网 发布:docker跑windows程序 编辑:程序博客网 时间:2024/04/29 01:30
1、获取当前选中子节点
DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
2、(DefaultTreeModel)tree.getModel() //添加删除修改树节点时,先将树转换为模型
public void actionPerformed(ActionEvent e) {DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();// 获取选择的当前节点if (e.getSource() == addItem) {// 为node添加子节点到所有子节点的最后((DefaultTreeModel) tree.getModel()).insertNodeInto(new DefaultMutableTreeNode("Test"), node, node.getChildCount());tree.expandPath(tree.getSelectionPath());} else if (e.getSource() == delItem) {if (node.isRoot()) {return;}// 首先得到模型,转换为DefaultTreeModel,获取到树模型,从父节点上移除该子节点((DefaultTreeModel) tree.getModel()).removeNodeFromParent(node);} else if (e.getSource() == editItem) {tree.startEditingAtPath(tree.getSelectionPath());//不太灵,不能保存}}
3、设置树形的节点选择模式
tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
4、获取每一级节点,分别做处理
valueChanged()是实现了TreeSelectionListener的方法
@Overridepublic void valueChanged(TreeSelectionEvent e) {// 获取选择的节点DefaultMutableTreeNode node = (DefaultMutableTreeNode) jTree.getLastSelectedPathComponent();if (node.getLevel() == 0) {// 显示提示信息JOptionPane.showMessageDialog(null, node.getUserObject() + ": 共"+ node.getChildCount() + "个国家");} else if (node.getLevel() == 1) {// 显示提示信息JOptionPane.showMessageDialog(null, node.getUserObject() + ": 共"+ node.getChildCount() + "名名将");} else if (node.getLevel() == 2) {// 显示提示信息JOptionPane.showMessageDialog(null, node.getParent() + "名将: "+ node.getUserObject());}}
5、window不同的风格通过UIManager.setLookAndFeel(lookAndFeel);来设置。
lookAndFeel的不同种类有空再研究
0 0
- JTree总结
- JTree使用总结
- JTree的总结
- jtree
- JTree
- JTree
- JTree
- JTree
- JTree
- JTree
- JTree
- JTree
- JTree
- JTree
- swing组件JTabel和JTree使用总结
- (总结)Swing组件的使用---表格(JTable)和树(JTree)
- 使用JTree
- jtree问题
- u-boot环境变量
- OC-属性与成员变量的简单介绍与区别
- tip5:了解C++默默编写并调用了哪些函数
- 【动态规划-01背包】 HDU 1203 I NEED A OFFER!
- 云计算仿真工具中文注释CloudSim.java
- JTree总结
- Acitivity 之间如何传递消息(数据)
- Codeforces #260 (Div. 1) B. A Lot of Games(数据结构:trie+DFS)
- 树递归查询节点下所有子孙
- 函数指针详解
- Linux下按照行数切割文件
- A*B Problem II
- 字符编码笔记:ASCII,Unicode和UTF-8
- CloudSim源码分析之虚拟机分配