2013-10-04 33 views
1

如何添加一个mouselistener到jgraphx中的特定顶点?如何添加一个mouselistener到顶点 - jgraphx

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

我可以使用这个来回graphcomponent,但我怎么能指定它的顶点?

回答

0

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

下面是一个例子:

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 
     } 
    } 
}); 
0

您可以创建一个给定的细胞state,即特定顶点的mxCellHandler。您可以检查mxGraphComponent类的createHandler()

希望这会有所帮助。

相关问题