java - 如何给 DefaultMutableTreeNode 添加 Tag 来区分节点?

标签 java swing jtree treenode

我是 Java 的新手,我有一个 JTree,我想添加一些节点然后我想创建一个 custom renderer对于使每个节点都有不同图标的控件,由于我来自 c# 背景,我想向每个节点添加 Tag 以使其成为选择图标的标准,有人可以帮助我吗?

P.S: 我不想在它的字符串文本上切换大小写,因为它可能会从一种语言变为另一种

这是我用来添加节点的代码示例;

DefaultTreeModel model = (DefaultTreeModel) jTree1.getModel();
DefaultMutableTreeNode root = (DefaultMutableTreeNode) model.getRoot();

for (int j = 0; j < 5; j++) {
    DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("Main :" + j);
    model.insertNodeInto(node1, root, root.getChildCount());

    for (int i = 0; i < 4; i++) {
        DefaultMutableTreeNode tmpnode = new DefaultMutableTreeNode(i);
        model.insertNodeInto(tmpnode, node1, node1.getChildCount());
    }
}

最佳答案

public DefaultMutableTreeNode(Object userObject) 

构造函数可以获得任何对象。定义您自己的 NodeInfo 类,您可以在其中定义任何所需的字段。重写类的 toString() 应该产生简单的表示(或者您可以编写自定义渲染器)。

关于java - 如何给 DefaultMutableTreeNode 添加 Tag 来区分节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14620953/

相关文章:

java - JLabel 中的多行文本

java - 从 Flex 到 Java 的 Unicode 字符

java - JTextpane 不会在文件中保存属性文本和图标

java - 使用包含可编辑 JTextArea 的 JPanel 呈现 JTree 叶

java - JTree 避免重新加载后崩溃

java - 使用引导类加载器找不到类

java - 一直坚持使用 Java Swing Timer

java - Java Swing 中正确的模型- View - Controller 模式

java - 用 Java 绘制最简单的方法是什么?

java - 树单元渲染器 : applying different style of the node's text which is depending on the user object's type