java - 将自定义属性添加到 JTree 并打印它

标签 java swing jtree

我正在尝试实现一个FP-Tree。所以我使用了JTree。我已经成功创建了我的树。但我需要向我的节点添加两个自定义属性,“Label”和“LabelCount”

我还需要将其打印在树中。这可能吗?

最佳答案

使用 DefaultMutableTreeNode 作为节点并向其添加用户对象,然后将您自己的 TreeCellRenderer 实现添加到树中 (setTreecellRenderer(...)
在您的 TreeCellRenderer 中实现 getTreeCellRendererComponent 方法。

Component getTreeCellRendererComponent(JTree tree,
                                 Object value,
                                 boolean selected,
                                 boolean expanded,
                                 boolean leaf,
                                 int row,
                                 boolean hasFocus)

Object 值参数将是包含您的用户对象的 DefaultMutableTreeNode。

您可以只返回包含所需文本的 JLabel(或任何其他组件)。

出于性能原因,您可以重用 JLabel,无需每次调用​​该方法时都创建一个新的 JLabel。

关于java - 将自定义属性添加到 JTree 并打印它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15722573/

相关文章:

java - 输入对话框[所需信息]

java - JSplitPane 重置分隔线位置

Java树节点选择

java - 数据传输中反序列化后不是同一个对象

java - 显示 JWindow 一段时间

java - Swing JTree图标渲染

java - 创建、更新和获取其余端点中的相同/不同 DTO 对象?

java - Intellij-Idea - Tomcat 远程更新

java - 在 Array 与 ArrayList 中转换对象并调用该对象的方法

java - 如何从 TAB 文件检索连接详细信息 - MQ