JointJS:如何避免父矩形被子矩形自动调整尺寸
问题解决:父矩形嵌入子元素后保留原尺寸
你遇到的问题是mxGraph中父矩形嵌入子元素时自动调整尺寸,要让父矩形保持手动设置的大小,只需禁用父容器的自动调整行为即可。另外注意原代码中Const是语法错误,JavaScript中需使用小写const声明变量。
修改后的代码
const r1 = new shapes.standard.Rectangle(); r1.size(120, 120); // 禁用父容器自动适配子元素尺寸的行为 r1.setStyle({resizeContainer: false}); const r2 = new shapes.standard.Rectangle(); r2.size(100, 20); // 可选:设置子矩形在父容器内的位置(示例为水平居中、垂直居中偏下) r2.position(10, 50); r1.embed(r2); graph.addCells([r1, r2]);
关键说明
resizeContainer是mxGraph控制容器单元格的核心样式属性,默认值为true,会让父容器自动拉伸以适配子元素大小;设置为false后,父矩形会严格保留你通过size()设置的120x120尺寸。- 若需要调整子矩形在父容器内的显示位置,可通过
position(x, y)方法指定坐标,x和y是子矩形相对于父容器左上角的偏移量。
内容的提问来源于stack exchange,提问作者Ramya Deepika
相关产品推荐
相关产品推荐

