跳至主要内容

脚本方式改布局:直接调用 hqVisuDesigner.setComponentLayout() | Mingcedar Studio

如果目标位置或目标尺寸已经明确,且这种变化难以通过固定几何行为表达,可以使用脚本直接调整布局。

几何与高阶用法脚本
脚本

脚本方式改布局:直接调用 hqVisuDesigner.setComponentLayout()

如果目标位置或目标尺寸已经明确,且这种变化难以通过固定几何行为表达,可以使用脚本直接调整布局。

脚本布局的优先场景

当布局变化依赖多个输入、多个模板值或复杂条件组合时,脚本通常比堆叠大量几何参数更清晰。联动多个对象一起变化时,hqVisuDesigner.setComponentLayout() 会更直接。

适合什么高阶场景

拖动结果回写、对象成组平移、根据用户输入重新布置面板、根据模板值动态调整弹窗位置,这些都适合脚本方式。

最简单的脚本布局例子

此 Click Script 使用 getComponentData 的 left / top 读取源位置,用 setComponentLayout 的 x / y 设置位置。每次移至源位置右侧两个宽度处,不累计位移。

// Click Script
var data = hqVisuDesigner.getComponentData("GatePositionIndicator");
if (data) {
  hqVisuDesigner.setComponentLayout("GatePositionIndicator", {
    x: data.left + data.width * 2,
    y: data.top,
    angle: data.rotation || 0
  });
}
范围动画与几何映射
范围映射

几何行为将输入范围映射到位移、角度或缩放范围;超出这些映射规则的布局需求可使用脚本。

再次点击图片或按 Esc 关闭