草庐IT

java - JTree : how to get the text of selected item?

如何在JTree中获取所选项目的文本? 最佳答案 来自JTree上的Java教程网站://Wherethetreeisinitialized:tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);//Listenforwhentheselectionchanges.tree.addTreeSelectionListener(this);publicvoidvalueChanged(TreeSelectionEvente)

java - JTree 更新节点而不折叠

我有一个JavaSE7应用程序需要JTree节点已更新。来自Oracle使用此thread给出的教程,没有关于如何更新代码上的标签(树上节点的显示文本)的提示。目前我正在使用DefaultTreeModel作为我的模型JTree和DefaultMutableTreeNode作为所述树的节点。为了进一步了解我正在处理的应用程序的详细信息,我正在开发一个聊天工具,其中显示联系人及其每个帐户的可用性状态(在线、离线等)。问题是,我如何更新特定节点的显示文本而不(最多)将它从它的父节点中删除并将它添加到它的指定索引中。像DefaultMutableTreeNode.setText("")?更新

Java JTree 只展开一级节点

使用JTree,假设根节点是0级,并且根节点下最多可能有5级,我如何轻松扩展所有1级节点,以便所有1级和2级分支和叶子都可见,但级别3及以下不是吗? 最佳答案 感谢各位的快速回复。但是,我现在找到了我一直在寻找的简单解决方案。出于某种原因,我在JavaDocs中看不到DefaultMutableTreeNode.getLevel()!仅供引用,我现在正在做的是:DefaultMutableTreeNodecurrentNode=treeTop.getNextNode();do{if(currentNode.getLevel()==1

java - 重写 JTree 双击以防止节点扩展?

看起来有2个默认机制来扩展JTree中的文件夹节点。一种是单击节点旁边的展开/折叠图标。另一种方法是双击节点本身。有没有办法阻止这第二种机制?我想覆盖对节点的双击,以便它执行某些操作(更新另一个显示以显示有关被双击的节点的统计信息),并希望它不展开/折叠树节点。(明确一点:我不想阻止节点展开/折叠,我只想要求用户单击展开/折叠图标。)我该怎么做? 最佳答案 来自相关APIpage,你会做这样的事情:JTreetree=newJTree();tree.setToggleClickCount(0);这意味着您必须使用0次点击来伸展树(S

java - 从 JTree 添加和删除节点

我有一个非常基本的JTree。由于我很匆忙,如果不需要,我不希望使用TreeModel。我写了一个SSCCE来暴露问题:有时我会添加一个节点。其他时候我删除它们。当我按下Add时,会正确添加一个节点。当我推Remove时,它应该删除节点,但它没有。此外,如果我尝试添加多个节点,则树只保留我添加的第一个节点。我为JTree写了一个更新方法,这里我先删除所有卡在根节点上的节点,然后看看我要创建哪些节点和子节点。除了没有使用TreeModel对树进行操作之外,我在这里做错了什么?importjava.awt.Dimension;importjava.awt.GridBagConstraint

java - Java JTree的右键单击上下文菜单?

我正在尝试在JavaJTree中实现弹出菜单。我将DefaultTreeCellRenderer(以更改节点外观)和DefaultTreeCellEditor(以创建组件以将事件监听器附加到,因为显然DefaultTreeCellRenderer.getTreeCellRendererComponent()返回的组件不能做到这一点?)。我真的不想“编辑”节点,只是能够在节点被右键单击时弹出一个菜单,但这是我现在能想到的唯一方法......下面是我到目前为止的代码——我只是想弄清楚如何捕获MouseEvents。它有点工作,但很糟糕。有什么更好的方法来完成我在这里尝试做的事情?priva