java - Swing 中的连续工具提示更新

标签 java swing tooltip

我有一个类似于 JTree 实现的自定义 swing 组件。它有一个使用 CellRenderer 呈现对象列表的 ComponentUI。工具提示现在可以正确显示每个渲染单元格,但它不会像我希望的那样跟踪鼠标。例如,如果我有这样布置的盒子;

 [ box A ]    [ box B ]   [ box C ]   [ box D ]

如果我将鼠标拖过这些框,我将看到 box A 的工具提示,其中鼠标穿过 box A 边界。当我继续移动鼠标时,工具提示将不会跟踪指针。当我离开框时,工具提示将适本地消失。当我穿过 box B 时,同样的事情发生了。

我的猜测是工具提示仅在 getToolTipText(MouseEvent event) 的内容更改时更新 View 。我想要的行为是让工具提示跟踪指针位置,而不管 getToolTipText 返回的内容。一个快速的 hack 是根据对方法的偶数/奇数调用来添加和删除空白空间。这行得通,但是,这不是我应该做的方式。

我正在寻找一种优雅的非黑客方法来解决这个问题。我希望有人知道某个地方有一些神秘的标志,无论鼠标内容如何,​​它都会强制工具提示跟随鼠标。

最佳答案

覆盖 getToolTipLocation在你的单元格渲染器中。

关于java - Swing 中的连续工具提示更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1532217/

相关文章:

java - 我可以使用 Terracotta 来扩展 RAM 密集型应用程序吗?

java - 在运行 swing gui 的同时运行线程

java - 将 keylistener 添加到 CardLayout 中的面板

c# - 将 InputGestureText 显示为 Button 的工具提示

javascript - Highcharts 列工具提示 - 始终位于顶部 + 适合容器

java - 无法在java中将字符串转换为MM/dd/yyyy格式

java - 将提交者/作者添加到 NetBeans 11.0 Bitbucket 提交

java - 单独的类来播放声音

java - JDesktopPane 放置

jquery - 将鼠标悬停在照片上时遇到简单的文本工具提示