2013-10-04 2 views
1

Как я могу добавить mouselistener в определенную вершину в jgraphx?Как добавить mouselistener в вершину - jgraphx

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

Я могу использовать этот параметр graph graph, но как его указать для вершины?

ответ

0

Вы можете вызвать метод getCellAt(int x, int y) класса graphcomponent с методами getX() и класса MouseEvent. Это вернет вам объект, если есть вершина (или край), на которую вы щелкнули, а затем с помощью простого сравнения вы можете решить, какая именно вершина.

Вот пример:

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

Вы можете создать mxCellHandler для данной ячейки state, т.е. конкретной вершины. Вы можете проверить createHandler() класса mxGraphComponent.

Надеюсь, это поможет.