如何添加一个mouselistener到jgraphx中的特定顶点?如何添加一个mouselistener到顶点 - jgraphx
graphComponent.getGraphControl().addMouseListener(new MouseAdapter() {
public void mouseReleased (MouseEvent e1) {
我可以使用这个来回graphcomponent,但我怎么能指定它的顶点?
如何添加一个mouselistener到jgraphx中的特定顶点?如何添加一个mouselistener到顶点 - jgraphx
graphComponent.getGraphControl().addMouseListener(new MouseAdapter() {
public void mouseReleased (MouseEvent e1) {
我可以使用这个来回graphcomponent,但我怎么能指定它的顶点?
您可以使用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
}
}
});
您可以创建一个给定的细胞state
,即特定顶点的mxCellHandler
。您可以检查mxGraphComponent
类的createHandler()
。
希望这会有所帮助。