控件权限:满足条件才显示/可触控,最多两个条件组合(AND/OR)。比逐个画面叠控件干净得多。
1. 属性
| 字段 | 说明 |
|---|---|
| 条件地址 | 判断用寄存器 |
| 比较 | ==、!=、<=、>=、<、>、IN(范围内含边界)、OUT(范围外不含边界) |
| 值 | 比较值;IN/OUT 时需填下限+上限 |
| 附加条件 | AND / OR,第二个条件 |
| 无权限时 | 隐藏控件 / 禁止触控 |
2. 单/双条件
单条件:LW1000==1 显示。双条件 AND:LW1000==1 且 LW1001==1 显示;双条件 OR:LW1000==1 或 LW1002==1 可触控。
3. 多条件(>2 个)
权限最多 2 个条件,3 个以上用 Lua 把多条件算成 1 个结果写回某寄存器,控件权限判这个寄存器:
function on_run()
local v1 = get_uint16(VT_RW, 0x1000)
local v2 = get_uint16(VT_RW, 0x1001)
local v3 = get_uint16(VT_RW, 0x1002)
if v1 == 1 and v2 == 1 and v3 == 1 then
set_uint16(VT_RW, 0x1100, 1)
else
set_uint16(VT_RW, 0x1100, 0)
end
end
控件权限最多 2 条件——别想着在界面里配 3 个 AND。超过就用 Lua 在 on_run 里算好写回一个寄存器,控件权限判那一个。注意 on_run 是周期回调,逻辑要轻。
整理自 广州大彩科技 VisualHMI 开发文档(hmi-doc.gz-dc.com)其他技术教程「控件权限」,版权归大彩科技所有。
发表回复