1

如何获得更改边缘源或目标的事件?当边缘首先连接两个节点时,我可以得到,但我无法找到用户更改已创建边缘的源或目标的情况。

4

1 回答 1

1

我刚刚找到了如何做到这一点:

        graph.addListener(mxEvent.CELL_CONNECTED, new mxIEventListener() {
            @Override
            public void invoke(Object sender, mxEventObject evt) {
                mxCell connectionCell = (mxCell) evt.getProperty("edge");
                boolean source = (Boolean) evt.getProperty("source");
                                    /* source == true when source changed, source == false, when target changed). */
            }
        });

您将获得源和目标更改的单独事件。IE 在第一次连接时会得到两个事件;一个源 == true,但边缘的目标尚未设置。然后使用 source == false。但是只有在有目标的情况下才能获得后者......(因此,如果您想在第一次连接时删除悬空边缘,您仍然必须在 mxGraphComponent 的 ConnectonHandler 上使用 mxEvent.CONNECT 事件)

于 2013-07-18T11:02:36.450 回答