如何在相对布局管理器中定位的组件旁边绘制带有图像的弹出窗口



A有一个带有小缩略图的列表,如果将鼠标悬停在缩略图上,则希望显示一个花哨的工具提示,其中缩略图的图像的较大版本位于缩略图左侧。如果将鼠标向下拖动到下一个列表元素,则旧的工具提示将消失,新单元格旁边将出现新的工具提示。

与现有的文本工具提示javax.swing.JComponent.setToolTipText(String)不同,我喜欢的工具提示应该始终显示在当前列的左侧。问题是,这是一个非常复杂的相对布局,我无法为此进行更改。花哨的工具提示应该像真正的工具提示一样出现在所有其他组件之上,即我不能为它保留一些可用空间。

我查看了真实工具提示的实现过程,并考虑了一些事情,比如获得鼠标mouseEvent.getX()的绝对坐标,减去缩略图内的位置,以获得我的花式工具提示的右角。是否可以在注册侦听器的组件内获取鼠标事件的坐标?有什么更好的主意可以满足我的需求吗?

我以为java.awt.event.MouseEvent.getX()是绝对点,但那是java.awt.event.MouseEvent.getXOnScreen(),即这已经是答案了。。。

最新更新