- 浏览: 357773 次
- 性别:
- 来自: 青岛
文章分类
最新评论
-
贝塔ZQ:
java实现操作word的读取和修改操作,用插件实现的话,可以 ...
java用poi实现对word读取和修改操作 -
yh412:
[flash=200,200][url][img]引用[/im ...
java用poi实现对word读取和修改操作 -
2047699523:
最代码 http://www.zuidaima.com 提供 ...
Java经典代码 -
漫成咖啡:
如何制作卡片型单据 -
geekant:
import com.swing.lx.table 这个包是你 ...
JTable的表头合并
在实际开发过程中会经常使用JTree组件,平时会遇到这样或那样的问题,在此将偶得一点经验写下来,与大家共享,希望对大家有所帮助。 private JTree jtNetDevice;//树组件申明 private JScrollPane jspTree;//滚动面板申明 1、初始化 DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("root"); jtNetDevice = new JTree(rootNode); jtNetDevice.setAutoscrolls(true); getTreeSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);//设置单选模式 jspTree = new JScrollPane(); jspTree.getViewport().add(jtNetDevice, null); 2、三个经常使用的取值函数 private DefaultTreeModel getTreeModel(){ return (DefaultTreeModel)jtNetDevice.getModel(); } private DefaultMutableTreeNode getRootNode(){ return (DefaultMutableTreeNode)getTreeModel().getRoot(); } private TreeSelectionModel getTreeSelectionModel(){ return jtNetDevice.getSelectionModel(); } 3、根据node得到path: TreePath visiblePath = new TreePath(getTreeModel().getPathToRoot(node)); 4、根据Path展开到该节点 jtNetDevice.makeVisible(visiblePath); 5、根据path设定该节点选定 jtNetDevice.setSelectionPath(visiblePath); 6、选中节点的方法 首先,根据节点得到树路径,其中chosen为需要选中的节点 TreePath visiblePath = new TreePath( ( (DefaultTreeModel) jtNetDevice.getModel()). getPathToRoot(chosen)); 然后根据Path选中该节点 jtNetDevice.setSelectionPath(visiblePath); 7、滚动到可见位置 jtNetDevice.scrollPathToVisible(visiblePath); 8、给JTree添加右键弹出菜单 void jtNetDevice_mouseReleased(MouseEvent e) { if (e.isPopupTrigger()) { jPopupMenu1.show(e.getComponent(), e.getX(), e.getY());//弹出右键菜单 } } 9、关于JTree的展开 // If expand is true, expands all nodes in the tree. // Otherwise, collapses all nodes in the tree. public void expandAll(JTree tree, boolean expand) { TreeNode root = (TreeNode)tree.getModel().getRoot(); // Traverse tree from root expandAll(tree, new TreePath(root), expand); } private void expandAll(JTree tree, TreePath parent, boolean expand) { // Traverse children TreeNode node = (TreeNode)parent.getLastPathComponent(); if (node.getChildCount() >= 0) { for (Enumeration e=node.children(); e.hasMoreElements(); ) { TreeNode n = (TreeNode)e.nextElement(); TreePath path = parent.pathByAddingChild(n); expandAll(tree, path, expand); } } // Expansion or collapse must be done bottom-up if (expand) { tree.expandPath(parent); } else { tree.collapsePath(parent); } } 10、如何遍历JTree // 创建树 JTree tree = new JTree(); // 添加树节点...... // 遍历所有节点 visitAllNodes(tree); // 仅遍历展开的节点 visitAllExpandedNodes(tree); // Traverse all nodes in tree public void visitAllNodes(JTree tree) { TreeNode root = (TreeNode)tree.getModel().getRoot(); visitAllNodes(root); } public void visitAllNodes(TreeNode node) { // node is visited exactly once process(node); if (node.getChildCount() >= 0) { for (Enumeration e=node.children(); e.hasMoreElements(); ) { TreeNode n = (TreeNode)e.nextElement(); visitAllNodes(n); } } } // Traverse all expanded nodes in tree public void visitAllExpandedNodes(JTree tree) { TreeNode root = (TreeNode)tree.getModel().getRoot(); visitAllExpandedNodes(tree, new TreePath(root)); } public void visitAllExpandedNodes(JTree tree, TreePath parent) { // Return if node is not expanded if (!tree.isVisible(parent)) { return; } // node is visible and is visited exactly once TreeNode node = (TreeNode)parent.getLastPathComponent(); process(node); // Visit all children if (node.getChildCount() >= 0) { for (Enumeration e=node.children(); e.hasMoreElements(); ) { TreeNode n = (TreeNode)e.nextElement(); TreePath path = parent.pathByAddingChild(n); visitAllExpandedNodes(tree, path); } } }
发表评论
-
零碎脑残
2012-12-05 10:08 1243if (NCOptionPane.showConfir ... -
表体设置颜色
2012-04-16 15:22 1098//取得选定的行 int[] rows = ge ... -
一些查询模板的默认值
2012-04-16 14:54 1086查询条件的取值可以使用系统函数,带有#value#的为系 ... -
获得焦点
2012-04-16 14:37 1406表头: (getBillCardPanel().get ... -
根据身份证号生成出生日期
2012-04-16 14:05 2959/** * @创建时间:2007-5-10 下午04 ... -
初始化超级用户root密码
2012-01-11 22:15 1251初始化超级用户root密码 -
NC表型参照类
2011-09-05 15:40 7089package nc.ui.bd.ref; /** ... -
Excel导出功能
2011-08-19 14:40 1322NC中功能事件代码: ... -
节点号编码
2011-05-17 22:30 1022新开发单据或档案若越过license验证在节点号设置时有要求: ... -
NC5.5中无法创建账套
2011-05-15 17:19 915NC5.5中无法创建账套 错误显示:后台Ser ... -
BillListPanel中获得选中的行
2011-05-15 17:16 1363int row = getBillListPanel() ... -
NC数据排序
2011-05-15 16:12 1022VO排序 -- nc.vo.trade.voutil ... -
消息过长对话框
2011-04-07 21:55 1248package nc.ui.ldzl.dlg; i ... -
UFDouble常用方法
2011-04-04 21:21 8272UFDouble ufDouble = new UFDo ... -
对联
2011-03-26 13:16 957横联 : 单据开发 上联 : 主表子表主子表 ... -
页签转换
2011-03-20 14:18 1198A.。 在ClientUI类中实现ChangeListener ... -
BillModel 单据表体表模式
2011-03-17 12:54 1763//单据表体表模式,带有默认合计行表模式、行号表模式。 th ... -
获取单据号
2011-03-17 11:25 1693ZlRentVO zlRentVO = new ZlRe ... -
参照可手写录入,不验证
2011-03-17 10:49 1093//参照可手写录入,不验证 UIRefPane ref ... -
给开片界面中的参照加入默认查询语句
2011-03-17 09:42 1047//设置点击节点时,默认设置为开片界面 this.se ...
相关推荐
本文将总结JTree的一些常用方法,并通过实例来演示如何使用这些方法,为初学者提供学习参考。 1. JTree组件常用方法 JTree组件提供了多种方法来实现用户界面的定制和树形数据的管理,以下是一些常用的方法: - `...
在Java编程中,理解和掌握`JTree`的使用方法对于创建具有用户友好界面的应用程序至关重要。`jenkov-prizetags-doc-3.4.0.zip`压缩包提供的JTree Doc文档是开发者学习和查阅`JTree`功能的重要参考资料。 **Javadoc...
在IT领域,尤其是在Web开发中,`JTree`是一个常用组件,它用于在用户界面中展示数据的层次结构,比如文件系统、组织架构等。在本案例中,我们讨论的是一个使用JavaScript实现的JTree,这通常是通过HTML、CSS和...
6. **`JTree`的常用方法** - `addTreeSelectionListener`: 添加树选择监听器。 - `getSelectedNode`: 获取当前选中的节点。 - `expandRow`: 展开指定行的节点。 - `collapseRow`: 折叠指定行的节点。 - `...
DefaultMutableTreeNode是JTree中常用的模型类,它可以动态地添加、删除和修改节点。然后,他们会将这个树模型(TreeModel)与JTree组件关联起来,通常通过调用`new JTree(model)`来实现。接着,可能还会设置JTree的...
JTree是由TreeNode对象组成的树形结构,TreeNode是树节点的抽象类,它的子类DefaultMutableTreeNode是最常用的实现。每个节点可以有任意数量的子节点,并且可以通过JTree的模型(TreeModel)来添加、删除或修改这些...
最常用的实现是DefaultTreeModel,它可以容纳任意数量的TreeNode对象,这些节点代表了树结构中的每个元素。TreeNode类可以代表一个叶子节点(没有子节点)或一个分支节点(有子节点)。你可以根据需要创建自定义的...
以下是一些关于 `JTree` 的关键知识点: 1. **构造JTree**: 创建 `JTree` 可以通过提供 `DefaultMutableTreeNode` 或者自定义的 `TreeModel` 实例。`DefaultMutableTreeNode` 是最常用的,用于简单数据结构的展示。...
TreeNode 接口是 JTree 模型中的一个重要接口,定义了树节点的基本方法。TreeNode 接口定义了对节点的父节点和子节点的访问方法,以及获取节点索引和获取一个节点包含的子节点数目的方法。MutableTreeNode 接口是 ...
之后,将`TreeModel`设置到`JTree`中,并可能添加一些事件监听器来处理用户的交互。 结合`JTable`和`JTree`,开发者可以在GUI应用程序中创建复杂的数据展示和交互界面。通过自定义`TableModel`和`TreeModel`,可以...
【JTree的常用构造方法】 1. `JTree()`:返回带有示例模型的JTree。 2. `JTree(Object[] value)`:创建一个JTree,其中数组的每个元素都是新根节点的子节点。 3. `JTree(TreeNode root)`:以指定的TreeNode作为根...
JComboBox 提供了一些常用的方法,以下是其中的一些: * setSelectedIndex(int index):设置当前选中的索引。 * getSelectedIndex():获取当前选中的索引。 * getSelectedItem():获取当前选中的数据项。 * ...
这个压缩包“老外用Swing开发的一些JAVA常用窗口编程组件源码.rar”显然包含了用Swing实现的各种常见GUI组件的源代码,这对于学习和理解Swing以及Java窗口编程非常有帮助。 Swing提供了丰富的组件库,用于构建桌面...
本资源"利用Swing开发的JAVA常用组件代码fprod-common-7.3.rar"提供了使用Swing开发的一些常见组件的示例代码,这将有助于理解和实践如何在Java程序中创建和操作用户界面。 Swing提供了许多组件,它们是构建用户...
10. jtree:jTree是基于jQuery的树形插件,用于在网页上呈现树状数据结构,支持拖放操作、异步加载和自定义节点图标。 11. 常用html控件:这个文件可能包含了其他一些常见的HTML控件示例或代码片段,用于教学或参考...
以下是一些Java Swing中常用的组件,以及它们的功能和应用。 1. **JFrame**: JFrame 是一个顶级容器,它用于承载其他的组件。它是大多数Swing应用的基础,因为它提供了一个窗口来展示内容。你可以添加JPanel、...
8. **可展开/折叠节点**: 用户可以通过单击加号(+)或减号(-)来展开或折叠节点,这是通过`JTree`的`setExpandedState()`方法实现的。 9. **拖放操作**: `JTree`支持拖放功能,允许用户通过鼠标操作重新排列节点...
在Java编程领域,树型控件(Tree View)是一种常用的数据可视化组件,它允许用户以层级结构展示数据,常用于文件系统、组织架构或者复杂的分类系统等场景。本压缩包"树型控件 java.rar"包含了一个使用Java实现的树型...
- 工厂模式:可能用到工厂方法来创建TreeNode对象,以封装树的结构信息。 - 组合模式:TreeNode类可以看作是组合模式的应用,允许将树节点组合成树形结构,同时处理叶子节点和容器节点。 4. **实际应用**: - ...