我正在尝试使用mxCellOverlay
和addCellOverlay
以编程方式在现有顶点/顶点中添加新图标。如何获取我在工作室xml中的所有顶点,以便我可以在addCellOverlay
参数中传递它,如下例所示。
var overlay = new mxCellOverlay(new mxImage('editors/images/overlays/check.png',
16, 16), 'Overlay tooltip');
graph.addCellOverlay(allMyVertices, overlay);
参考:http://jgraph.github.io/mxgraph/javascript/examples/fixedicon.html
如果我在fixed var v1
的fixedIcon.html(第72行)中添加此代码,则会为我提供一个新的勾选/检查图标。
var overlay = new mxCellOverlay(new mxImage('editors/images/overlays/check.png',
16, 16), 'Overlay tooltip');
graph.addCellOverlay(v1, overlay);
答案 0 :(得分:1)
如果只想获得一个级别的顶点(而不是边缘),我建议使用mxGraph.getChildVertices
而不是mxgraph.getCells
。但是您必须将父级mxCell传递给该函数。然后,您将获得此单元格的所有子顶点。例如如果要向默认父级的所有顶点添加覆盖,则可以执行以下操作:
var overlay = new mxCellOverlay(new mxImage('editors/images/overlays/check.png', 16, 16), 'Overlay tooltip');
var parent = graph.getDefaultParent();
var vertices = graph.getChildVertices(parent);
graph.addCellOverlay(vertices, overlay);
当然,如果需要每个级别的所有顶点,则可以递归实现。
有关更多信息: https://jgraph.github.io/mxgraph/docs/js-api/files/view/mxGraph-js.html#mxGraph.getChildVertices
答案 1 :(得分:0)
这是:
mxGraph.prototype.getCells = function(x,y,width,height,parent,result);