【问题标题】:Jtree: how to hide parts of a given defaultmutabletreenode's text?Jtree:如何隐藏给定 defaultmutabletreenode 文本的部分内容?
【发布时间】:2011-11-01 03:45:34
【问题描述】:

假设我的 JTree 由以下节点组成。

new DefaultMutableTreeNode("DisplayThisTextOnly {donotdisplaystringsinhere}");

如何使用 TreeCellRenderer 隐藏 {} 之间(包括 {})之间的文本?

当我选择这个节点时,我希望能够再次获取整个字符串。

"DisplayThisTextOnly {donotdisplaystringsinhere}"

基本上我的目标是能够从给定的树节点获取额外的数据,而不必setObject()

【问题讨论】:

  • 你的意思是你想通过解析文本字符串从TreeNode获得额外的数据??!不要那样做。太疯狂了。只需在 DefaultMutableTreeNode 上调用 setObject(),然后调用 getObject() 即可取回您的对象。这将为您节省大量时间。您创建这些对象是为了帮助您有效地组织数据。然后像这样解析这些东西就是把你所有的工作都扔到窗外来创建这些对象。拯救自己。
  • 如果您需要 TreeNode 存储多个对象,请将它们放入容器中,并将容器作为对象存储。

标签: java swing jtree


【解决方案1】:

创建一个自定义渲染器并去掉你不想看到的文本。 How to Use Trees 上的 Swing 教程部分提供了一个示例渲染器,可帮助您入门。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多