Java 鼠标插入一个JUNG2顶点
我正在寻找一种“正确”的方式,当我将鼠标移到JUNG2中的顶点上时,将自定义组件显示为弹出窗口 这个问题本质上与 但那个人似乎满足于一个简单的工具提示弹出窗口,而我不是 注意:我目前使用的是一个带有Java 鼠标插入一个JUNG2顶点,java,mouse,jung,Java,Mouse,Jung,我正在寻找一种“正确”的方式,当我将鼠标移到JUNG2中的顶点上时,将自定义组件显示为弹出窗口 这个问题本质上与 但那个人似乎满足于一个简单的工具提示弹出窗口,而我不是 注意:我目前使用的是一个带有MouseMotionListener插件的实现,该插件执行类似的操作(我将NOTE对象作为顶点): 当我把鼠标移到一个顶点上时,它就工作了,我也可以在上面展开,在鼠标离开时关闭弹出窗口,但我担心这种方法效率极低:它本质上是检查我是否在每次鼠标移动时都将鼠标移到一个顶点上 我宁愿采用侦听器方法—是否
MouseMotionListener
插件的实现,该插件执行类似的操作(我将NOTE
对象作为顶点):
当我把鼠标移到一个顶点上时,它就工作了,我也可以在上面展开,在鼠标离开时关闭弹出窗口,但我担心这种方法效率极低:它本质上是检查我是否在每次鼠标移动时都将鼠标移到一个顶点上
我宁愿采用侦听器方法—是否有方法将
mouseEntered
/mouseExited
事件注册到顶点?(据我所知,这一切都是通过原始绘制完成的,没有我可以注册的组件)。这无法完成,因为顶点被绘制为基本体,没有鼠标移动的侦听器-只有选择/取消选择
@Override
public void mouseMoved(MouseEvent e) {
Note note = graphVisualiser.getPickSupport().getVertex(getGraphLayout(), e.getX(), e.getY());
if (note != null && note != lastMouseOverNote) {
lastMouseOverNote = note;
// my handling code here
}
}