如何在jgraphx中的特定顶点添加mouselistener?
graphComponent.getGraphControl().addMouseListener(new MouseAdapter() {
public void mouseReleased (MouseEvent e1) {
我可以使用此图形组件,但如何为顶点指定它?
答案 0 :(得分:0)
您可以使用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
}
}
});
答案 1 :(得分:0)
您可以为给定的单元格mxCellHandler
创建state
,即您的特定顶点。您可以查看createHandler()
课程的mxGraphComponent
。
希望这会有所帮助。