功能: 通用配合:Quality Border、Condition / Enabled、隐藏
这是行为编辑器里跨多种行为共用的几组开关,不是独立行为:Quality Border 用通信质量决定好/坏边框;Condition / Active / Enabled 决定行为是否运行;不同隐藏选项分别处理质量坏、不生效或超范围。
功能说明
这一项讲的是行为编辑器里反复出现、被多种行为共用的几组开关,它们本身不是行为,而是给行为加的通用配合。Quality Border 关注的是“标签的通信质量”是否正常(good / bad),不是工艺数值本身:质量好时边框用 GOOD 颜色,质量坏时边框用 BAD 颜色。Condition / Active / Enabled 是行为是否执行的总门槛:返回真就运行,返回假就跳过。隐藏项要看具体编辑器:交互类常见 Hide when disabled,Move / Rotate 当前有超范围隐藏,Scale 当前没有这个勾选项。
使用方法:编辑器里实际要填的字段
在对应行为编辑器里勾选 / 填写这些通用项:
- Quality Border:勾选后出现 GOOD 和 BAD 两个颜色格,分别是质量好 / 坏时的边框色(颜色、区间、脚本、离散、两态、多态、Tag 位、文本类行为都支持)。
- Hide when quality is BAD(质量坏时隐藏):与 Quality Border 搭配的勾选项,质量坏时不只是变边框色,而是直接隐藏组件。
- Condition(当前几何 Move / Rotate / Scale)/ Active(颜色 / 文本)/ Enabled(交互行为):填一个表达式,返回 true 运行、false 跳过;默认是 true。
- Hide when disabled(不生效时隐藏,交互类):Enabled 为假时把组件隐藏,已接入写变量、诊断、写标签等交互行为。
- Hide outside range / Hide outside rotation range(几何 Move、Rotate):输入值超出设定范围时隐藏组件;Scale 编辑器当前没有这个控件。
- 几何 Move / Rotate / Scale 当前编辑器用 Source Value 或 Rotation Input 加 Condition 驱动主逻辑,没有单独的 Post Operations 输入框。
// Condition / Active / Enabled:只返回一个真假结果
ReadTagQualityGood("PLC1.PUMP.SPEED")
适用场景
两个典型现场场景:
- 质量提示:给指针、状态灯、数值文本勾上 Quality Border,PLC 掉线或该点通信坏掉时边框立刻变 BAD 色;对“坏点不该再显示”的关键位,再勾 Hide when quality is BAD 直接隐藏。
- 条件生效与隐藏:用 Condition / Active / Enabled 让某个行为只在特定模式(如手动模式、某画面状态)下运行;需要“条件不成立就隐藏”时,优先找当前编辑器里是否有对应 Hide 选项,没有就配合显隐类行为。
边界与易错点
常见误区:
- Quality 是“通信质量”,不是工艺数值;质量坏时颜色行为不应继续像标签还正常一样闪烁 / 动画。
- Condition / Active / Enabled 是输出一个真假结果的位置,只放“能立刻算出真假”的表达式,不要把整段带 if/for、异步 fetch 的脚本塞进去。
- Move / Rotate / Scale 这批几何编辑器当前没有 Post Operations 输入框;不要按旧口径去找这个控件。
- “隐藏”有三个来源、用途不同:质量坏隐藏(Hide when quality is BAD)、不生效隐藏(Hide when disabled)、超范围隐藏(Hide outside range);不要混在一起理解。