mxgraph中有swimlane example,但它不是自动的。因此,我以graphlayout示例作为基础,并进行了一些更改:
这是我创建泳道的方法:
var lane1 = graph.insertVertex(parent, null, 'Lane 1', 0, 0, 1000, 100, 'swimlane');
var lane2 = graph.insertVertex(parent, null, 'Lane 2', 0, 100, 1000, 100, 'swimlane');
// use as parent...
var v1 = graph.insertVertex(lane1, null, 'A', 0, 0, w, h);
并执行布局:
layout.orientation = mxConstants.DIRECTION_WEST;
layout.resizeParent = true;
layout.execute(parent, [lane1, lane2]);
这是test page。
现在,这里有两个问题:
最佳答案
远非完美,但有所改进:
Demo
我已经添加:
layout.execute(lane1, [v1,v2,v3,v4]);
layout.execute(lane2, [v5,v6,v7,v8]);
并将resizeParent
更改为false
,看起来像尊重车道,但看起来并不令人愉快。关于javascript - MXGraph中的自动泳道布局,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44330233/