问题标签 [defaultmutabletreenode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何在给定路径的树中找到节点
我在 java 中有一个 TreeModel,我得到了一个查找路径以检查该路径是否存在。例如 /dir1/dir2/dir3/ 是我树中的现有路径。我的树是非二元的。我将如何解决这个问题?我的想法是让函数采用 DefaultMutableTreeNode 然后检查节点是否与我路径中的第一个目录具有相同的名称,以此类推其余目录。我的问题是如何递归地更改为下一个字符串和下一个节点。如果我的函数是递归的、迭代的等。任何帮助都会很棒!提前致谢。
java - 如何创建 JTree 扩展监听器
我在创建TreeExpansionListener
. 我认为它可以像TreeSelectionListener
. 不幸的是,我找不到正确的界面。
这是我的听众:
我收到的错误是“不兼容的类型:TreeExpansionListener 不是功能接口。在 TreeExpansionListener 中找到多个非覆盖抽象方法”
与我的比较TreeSelectionListener
: private TreeSelectionListener createSelectionListener() { return (TreeSelectionEvent e) -> {
我对这一切都错了吗?还是我错过了一些明显的东西?
java - 选择之前的TreeNode (java swing, tree)
我正在寻找一种在按钮单击时在实际选择的节点之前选择 TreeNode 的方法(如果没有选择节点,则应该选择根节点之后的第一个节点)。我基本上有一个 Hashtable ht 和一个充满节点的 JTree(所有节点都允许子节点)。一旦我单击一个节点,我想在哈希表中查找该对象,系统应该写出类似“你选择了'Object.name'”的内容。然后用户应该能够单击 JButton 并选择单击节点之前的节点。当然,这一行也应该有更新的“Object.name”。也许甚至有一种方法可以更新树的 GUI,以便将另一个 TreeNode 显示为选中状态。
我一直在尝试使用 selectionModel 和 TreeNodes 的 treePath-Methods 很长一段时间(例如,将它们保存在列表中并尝试在之前选择元素),但似乎没有任何效果。我也没有在 Google 或 StackOverflow 上找到任何有用的东西。我在想它可能会以某种方式与 DefaultMutableTreeNode 中的 getPreviousSibling-Method 一起工作?
我尝试的最后一件事:
不幸的是,我不断收到 NullPointerException:
在这个片段的第 2 行(虽然我之前选择了另一个 TreeNode,但之前有一个兄弟)。
谁能告诉我我做错了什么或告诉我其他方法可能有用吗?:D 如果您需要更多信息,请不要问我。
java - JTree 节点编辑路径比较始终为真
我已经在文件服务器程序上工作了一段时间,到目前为止,我已经能够避免在这里发布一些东西来寻求帮助。但我在我的问题上找不到任何东西,我很困惑。
我添加了一个弹出菜单,其中包含创建新顶级文件夹的选项,它实际上只是创建一个节点,并在其编辑后将其名称发送到服务器以创建文件夹。虽然我的所有编辑工作正常并且上传工作正常,但我遇到了问题。
我在创建文件夹时将 JTree 更改为可编辑,并且持续循环直到该节点不是正在编辑的节点,此时它从 JTree 中删除了可编辑性。
不幸的是,while 检查tree.getEditingPath().equals(nfPath)
总是返回true
,因此它仍然是可编辑的。
但我不明白为什么它仍然是正确的,它显然不应该。如果它有助于/改变任何东西,它会在一个单独的线程中运行(否则 while 循环会阻止 GUI 呈现)
那么我应该/我能做什么,有没有更好的方法来做到这一点,或者至少有一个可行的方法?
更新:
虽然我还没有找到解决上述明确问题的方法,但如果我改为测试tree.isPathSelected(nfPath)
That 工作正常并且树随后设置为不可编辑!
java - 用于 Spark mapToPair 时,DefaultMutableTreeNode 值设置为默认值
我有一个问题,类型 DefaultMutableTreeNode 变量的值一旦在 Spark mapToPair() 函数中使用就会变为默认值。这是我的代码:
接口 IB、ID、CB 和 CD 类定义如下:
问题是,CA.FuncWithSpark() 中 DefaultMutableTreeNode 类型的变量发生了什么?是因为 Spark 转换,还是 DefaultMutableTreeNode 的成员变量受到保护而没有访问者?请给我一个解决这个问题的方向。感谢您提前提供任何帮助!
java - TreeView 节点名称窃听
我在处理 TreeView 时遇到了很多麻烦,尤其是每个节点显示的文本。
从树的初始化程序开始,我希望在其中有一个带有文本的节点,它可能会使程序对用户更直观:
我添加初始化树:
没有显示“Relatórios Individuais”,Tree 好的,另一个错误
我忽略了这个问题并继续实际填充节点,用户指定他的搜索并按“确定”,这就是我们填充树的时候,第二张图像。
但是随后另一个奇怪的问题来了,如果再次按下“确定”,一些文字会变得奇怪,第三张图片。
这是 cade 中创建节点的部分。对于为每种类型的报告和每个报告批次创建的文件节点数组,它并不重要。
我认为真正的问题是:
这是定义树内容的正确方法吗?
编辑。:按钮确定:
编辑:CheckBoxCellRenderer:
java - 在 JTree 中动态添加节点
我在将节点动态添加到我的 JTree 时遇到了问题。
我通过 json 格式的 RestAPI 接收我的 JTree 信息。我需要的信息是文件夹 ID 和文件夹名称。
folderID 结构是这样的:
所以我需要通过我的文件夹ID 点来定义我的节点级别。我搜索了一些代码并找到了这个。
但是当我实现代码时,我收到一条错误消息:无法将根解析为变量
您能帮我找到解决问题的方法吗?
java - Java Swing > 通过从 Jtree 模型中选择 DefaultMutableTreeNode 来调用特定的 powershell 脚本
我第一次使用 java Swing,我想知道是否可以为每个 DefaultMutableTreeNode 添加值并通过选择特定节点来引用它们?
例如,通过从 Jtree 模型中选择节点来调用特定的 powershell 脚本(1 个节点 = 1 个脚本)。我真的是新手,如果有人可以解释或将我重定向到某个解决方案,我将非常感激;p
java - 显示驱动器的 JTree 根本不显示
我的任务是显示 PC 驱动器的所有目录/文件的树,我有一个DirectoryNode
扩展DefaultMutableTreeNode
为File
field的类directoryPath
。我递归地构建节点:
它适用于具体目录,但是当我尝试将它用于整个驱动器或一些大目录时,JTree
这个节点根本不显示,我认为它遇到了特定目录的问题。我添加了存在和隐藏检查来跳过这个问题的根源,但它没有帮助。
此外,exists
,isHidden
并isDirectory
返回false
我的一些有效目录目录(我使用的是 Windows 10)。