它是什么、用来做什么
State Color(状态颜色)是 Visual States 中用于两态显示的颜色行为。配置一个条件后,条件成立时组件使用 True State 样式(填充、边框、是否显示),条件不成立时使用 False State 样式。它不处理数值区间或多状态优先级;这些场景应使用 Range Color、Discrete Color 或 Multi-State Color。当一个图形只表达“是/否、开/关”时,State Color 是更清晰的配置方式。
State Color(状态颜色)是 Visual States 中用于两态显示的颜色行为。配置一个条件后,条件成立时组件使用 True State 样式(填充、边框、是否显示),条件不成立时使用 False State 样式。它不处理数值区间或多状态优先级;这些场景应使用 Range Color、Discrete Color 或 Multi-State Color。当一个图形只表达“是/否、开/关”时,State Color 是更清晰的配置方式。
State Color(状态颜色)是 Visual States 中用于两态显示的颜色行为。配置一个条件后,条件成立时组件使用 True State 样式(填充、边框、是否显示),条件不成立时使用 False State 样式。它不处理数值区间或多状态优先级;这些场景应使用 Range Color、Discrete Color 或 Multi-State Color。当一个图形只表达“是/否、开/关”时,State Color 是更清晰的配置方式。
把 State Color 从右侧拖到左侧组件节点上完成绑定,双击打开编辑器。先在 Definition 里读标签、做准备,再让 Condition 返回一个布尔值,然后分别配置“真状态”和“假状态”两套样式。
// Definition
var running = ReadTagInteger("PLC1.PUMP.RUN", 0);
// Condition
running === 1;
// True 状态: 填充 #00FF00(绿) → 运行
// False 状态: 填充 #FF8800(橙) → 停止
凡是组件只有两种明确状态、需要靠颜色或显隐一眼区分时就用它。
两个常见配置误区:一是只配置“真”状态样式,条件不成立时组件没有任何变化,因为 False State 的 Enabled 和 Apply When False 默认关闭,需要显示假状态时必须手动打开。二是 State Color 没有 Quality Border(通信质量边框)选项,不会因为标签质量变坏而提示;如果现场需要在断线时给出异常提示,请改用带 Quality Border 的行为(如 Script Color、Discrete Color)。另外 Condition 要返回布尔值,不要返回数字区间(那是 Range Color / Discrete Color)。
在编辑器里写条件,分别配置真/假两套填充、边框和显隐。