java jtree在延迟后重新显示每个项目的工具提示
Posted
技术标签:
【中文标题】java jtree在延迟后重新显示每个项目的工具提示【英文标题】:java jtree redisplay tooltip for every item after a delay 【发布时间】:2010-06-21 09:35:22 【问题描述】:当工具提示显示在树上并且鼠标移动时,工具提示保持可见并且文本发生变化。当鼠标从一个项目移动到下一个项目时,是否可以隐藏工具提示并重新显示它。
【问题讨论】:
【参考方案1】:根据需要扩展DefaultTreeCellRenderer
并调用setToolTipText()
。 Customizing a Tree's Display 中讨论的教程项目 TreeIconDemo2
演示了该方法。
附录:您可以在TreeCellRenderer
中为每个节点提供所需的文本,例如MyRenderer
:
setToolTipText(value + " is in the Tutorial series.");
【讨论】:
我已经尝试过了,但是工具提示不会消失并在每个节点移动一个时重新出现。我试图实现的行为是:鼠标悬停在 node1 -> 显示 node1 的工具提示 鼠标悬停在 node2 -> 隐藏 node1 的工具提示,n 延迟显示 node2 的工具提示 @jagguli:似乎在上面提到的TreeIconDemo2
中也可以使用。
@jagguli:哦,我明白了;您希望工具提示来来去去。您可以使用ToolTipManager.sharedInstance()
并更改延迟。
我希望工具提示在鼠标从一个节点退出时消失,然后在鼠标进入下一个节点时重新出现,而不是基于延迟。也许工具提示中的东西?
无论如何它不再是我们的要求了,主要关心的是当鼠标移动到一棵大树上时是否显示工具提示会增加 CPU 利用率,到目前为止它似乎不是这样,所以它好的。【参考方案2】:
您必须使用 setToolTipText(null) 来删除工具提示 - 我们明确这样做时它不会消失。
【讨论】:
以上是关于java jtree在延迟后重新显示每个项目的工具提示的主要内容,如果未能解决你的问题,请参考以下文章