| 版本 | 内 容 摘 要 | 日期 |
| V1.0 | 首次发布 | 2026/6/14 |
**【例程下载】**[ApusTFT - 多状态指示灯控件(点击下载)]
多状态指示灯
相比于位状态指示灯,该控件可根据寄存器的具体数值映射到预定义的多个状态,每个状态可以根据变量不同数值,显示多种颜色、图案、文字、图标,用来直观反映设备多级工况、故障分级、档位状态。

一、功能设置

1. 读取地址:控件将读取该地址的值。
2. 切换开关:选择[禁用、启用]。
- 启用,则控件可被点击切换状态。
2.1 写入地址:控件将值写入该地址。
2.1.1 不同地址:选择写入地址。
2.2 操作模式:选择[递增、递减]。
2.3 循环调节:选择[禁用、启用]。启用后,状态可从最后一个切换到第一个。
3. 数据类型:选择[UINT16、INT16、UINT32、INT32]。
4. 执行时机:选择[按下时、松开时、长按时]。
- 长按时
4.1 按压毫秒:长按的时长,单位ms,范围500~20000。
5. 播放声音:选择[禁用、启用]。
5.1声音文件:选择声音文件。更多选项通过[工程]-[声音]添加或删除。
二、状态设置

1. 状态数:输入多状态的状态数量。
2. 转换状态:选择[禁用、启用]。
2.1 状态转换表:设置状态索引和状态值的映射,例如:1;10;100;1000;10000。
3. 使用图片:选择[否、是]。
3.1 状态图片:设置各状态的图片

3.2 裁剪:选择缩放图片以适应控件大小,即控件尺寸不变;缩放控件以适应图片大小,即按图片大小缩放控件。
4. 使用文字:选择[否、是]。
4.1默认字体:字体名称,通过[工程]-[字库]添加或删除。
4.2字体大小:字体尺寸,范围8~500。
4.3字间距:相邻字符之间的间距,范围0~255。
4.4使用标签:选择[否、是]。
4.5选择状态:选择[ALL、S0、S1]。
-
- ALL:修改下面的子属性时,将同时修改所有状态对应的属性。
- S0/S1:修改下面的子属性时,仅对选中状态有效。
4.5.1文字内容:不使用标签时,需输入文字内容。
标签:使用标签时,指定标签,通过[工程]-[文字标签]添加或删除。
4.5.2颜色:文字颜色。
4.5.3对齐:仅支持水平对齐,选择[左、中、右]。
4.5.4闪烁:选择[无、0.5秒、1秒]。
4.5.5跑马灯:选择[无、左移动、右移动、下移动、上移动]。
4.5.5.1速度:文字跑马灯效果移动速度(像素/秒):1~10000。
4.6详细设置:多语言多状态下指定不同的字体

修改ALL行时,将同时修改S0/S1的属性
当使用标签时,下方多语言表中,不可再指定标签
当不使用标签时,下方多语言表中,可输入内容
三、应用示例
如下图,放置3列控件分别为:
第1列,2个【文字】控件,仅用于显示文字
第2列,4个【多状态】指示灯控件
第3列,2个【数值】输入框控件

1. 演示多状态指示灯【递增】
1.1 下图【多状态】指示灯属性


注意:【状态图片】属性中插入图片,详见示例工程。
1.2 下图【多状态】指示灯属性


其中【多语言多状态】属性如图

1.3 下图【数值】输入控件属性


1.4 运行
点击【多状态】指示灯控件或修改【数值】输入控件,查看效果

2. 演示多状态指示灯【递增】 及【状态转换】效果
2.1 下图【多状态】指示灯属性


注意:【状态图片】属性中插入图片
2.2 下图【多状态】指示灯属性


其中【多语言多状态】属性如图

2.3 下图【数值】输入控件属性


2.4 运行
点击【多状态】指示灯控件或修改【数值】输入控件,查看效果。
注:状态转换后,【数值】输入控件显示为转换后的值。输入时,也应为转换后的值
