0

当我将鼠标悬停在 JUNG2 中的顶点上时,我正在寻找将自定义组件显示为弹出窗口的“正确”方式。

这个问题本质上是一样的

Jung2:如何实现鼠标悬停在节点上时显示节点的详细信息?

但是那个人似乎对一个简单的工具提示弹出窗口很满意,而我却不是。

注意:我目前正在使用PluggableGraphMouse的实现和一个MouseMotionListener类似这样的插件(我有Note对象作为顶点):

    @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
        }
    }

当我将鼠标悬停在一个顶点上时它可以工作,我也可以在上面展开以在鼠标离开时关闭弹出窗口,但我担心这种方法效率非常低:它本质上是检查我是否在鼠标移动每次鼠标移动时在一个顶点上。

我宁愿有一个监听器方法 - 有没有办法注册mouseEntered/mouseExited事件到顶点?(据我所知,这一切都是通过原始绘画发生的,并且没有我可以注册的组件)。

4

1 回答 1

0

它无法完成,因为顶点被绘制为图元并且没有鼠标移动的侦听器 - 只有选择/取消选择。

于 2012-07-29T20:59:46.693 回答