如何添加一個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()
。
希望這會有所幫助。