如何创建mxCell,设置其mxGeometry的最小宽度,但是如果它的值字段的html元素比默认宽度大,它将调整为其value字段的html元素的宽度?
现在我有了这段代码
var style = 'rounded=0;whiteSpace=wrap;html=1;autosize=1;resizable=0;';
var cell = new mxCell(value, new mxGeometry(0, 0, width, height), style);
但是,当我创建此mxCell时,即使它包含的html元素(一个h3标题)超过了mxRectangle,它的大小也始终为“宽度”和“高度”。我该如何解决?
编辑:谢谢,它使用graph.updateCellSize()工作。因为我只想更改尺寸,但我想更改尺寸,所以我写了这段代码
this.graph.updateCellSize(cell, true);
var geom = cell.getGeometry();
geom.width = geom.width > width ? geom.width : width;
它将值更改两次,效率低下。我找到了另一种使用getPreferredSizeForCell
的方法var preferred = this.graph.getPreferredSizeForCell(cell);
var current = cell.getGeometry();
current.width = preferred.width > width ? preferred.width : width;
current.height = preferred.height > height ? preferred.height : height;
答案 0 :(得分:0)
尝试graph.updateCellSize(cell,true);