如何在jgraphx的特定顶点上添加鼠标监听器?

graphComponent.getGraphControl().addMouseListener(new MouseAdapter() {
                    public void mouseReleased (MouseEvent e1) {


我可以使用这个来图组件,但如何为顶点指定它呢?

最佳答案

您可以使用MouseEvent类的getCellAt(int x, int y)getX()方法来调用graphcomponent类的getY()方法。如果单击了某个顶点(或边),这将为您返回一个对象,然后通过简单比较就可以确定它是哪个顶点。

这是一个例子:

graphComponent.getGraphControl().addMouseListener(new MouseAdapter()
{
@Override
    public void mouseReleased(MouseEvent e)
    {
        mxCell cell =(mxCell) getGraphComponent().getCellAt(e.getX(), e.getY());
        if(cell != null && cell.equals(YOUR_VERTEX))
        {
            //specific thing you want to do on click
        }
    }
});

10-04 21:56
查看更多