VisualHMI - 键盘
HMI的数值、文本、密码登录支持弹出键盘,其中文本支持支持GBK、UTF8编码输入。如HMI80480M070, 新建工程自带两个键盘,其中工程默认生成两个键盘,全键盘如下所示。
数字键盘如下所示:
[!note|tip:注意:]
不同型号生成的、不同的旋转角度,默认生成的键盘布局不一样,其中2.4寸、2.8小尺寸屏幕,默认只生成数字键盘
若型号切换、角度切换,需要在菜单栏工程→键盘中恢复默认键盘,如下所示
适用范围:VisualHMI - HMI&M系列
下载链接:VisualHMI - 键盘(点击下载)
1.键盘管理
HMI最多支持10个键盘,键盘管理可以在菜单栏工程→键盘中设置。界面如下所示
启用:√
键盘画面:启用后,可以选择对应的画面,作为键盘画面。同时键盘画面可以复用复用,如1-数字键盘和3-密码键盘
键盘画面:启用有,下拉可以选择对应的键盘画面
恢复默认键盘:根据屏幕分辨率,会恢复默认键盘画面100_digitxxxxxx、101_digitxxxxxx
[!note|tip:注意:]
若把密码键盘删除,在安全等级将无法输入密码
2.系统变量
HMI提供系统变量接口,本章节,结合自带的键盘说明寄存器的使用
2.1 SysKBMax/SysKBMin
用于数字键盘显示范围限制的最大值、最小值
2.1.1 预览
若数值控件配置了范围限制,如0~100,弹出数值键盘将显示限定的值,如下所示
2.1.2 配置
键盘配置,添加2个文字控件、2个数值控件,如下所示
数值控件,用来显示范围限定的最大值、最小值,配置如下所示:
读取地址:最小值,关联$SysKBMin,最大值,关联$SysKBMin
权限控制:√
条件地址:$SysKBStatus.1 ,1-表示数值控件配置了范围限定
比较:==
值:1
无权限时:隐藏控件
文字控件,用来静态文本显示,配置如下所示:
权限控制:√
条件地址:$SysKBStatus.1 ,1-表示数值控件是否配置了范围限定
比较:==
值:1
无权限时:隐藏控件
2.2 SysKBSelect
键盘选择,用于英文大小写、数字符号、全键盘,切换。通过设置 SysKBSelect值,0-英文,1-数字符号,2-中文,来切换“虚拟按键”不同的键值
2.2.1 预览
SysKBSelect=0,英文模式(a~z 、A~Z);SysKBSelect=1,字符模式(!?#123);SysKBSelect=2,中文模式,如下所示
2.2.1 配置
键盘界面上,添加2个字设置按钮递增递减,用于 SysKBSelect 值的修改,3个多状态指示灯,用于SysKBSelect 值的显示。
2个字设置按钮,控件配置如下所示:
写入地址:$SysKBSelect
操作模式:递增、递减
步长:1
最小值:0
最大值:2
循环调节:√
3个多状态指示灯,控件配置如下所示:
读取地址:$SysKBSelect
文字状态:√
第1个:S0~S2,依次为abc,123,中
第2个:S0~S2,依次为中,abc,123
第3个:S0~S2,依次为123,中,abc
2.3 SysKBPinyin/SysKBHanzi
用于显示中文输入的拼音、预选汉字的显示
2.3.1 预览
如输入”guang”,预选项SysKBHan寄存器,将显示“光 广 逛 咣、犷、桄 ....”,如下所示。
2.3.1 配置
键盘界面,添加两个文本控件,分别关联SysPinying、SysKBHan,配置如下所示
2.4 SysKBText
用于显示键盘录入的数据
2.4.1 预览
弹出键盘,输入“123abcABC大彩”,如下所示
2.4.2 配置
键盘界面,添加1个文本控件,关联SysKBText,配置下所示
3. 虚拟按键
功能按钮用途设置为虚拟按键时,用于键盘的键值输入、操作等。属性如下所示
按钮用途:虚拟按键
按键:可选如下所示
类型 | 说明 | 类型 | 说明 |
---|---|---|---|
字符 | 0~9、a~z、可视化字符等 | Left | 预选汉字向左翻页 |
切换键盘 | 切换到目标键盘 | Right | 预选汉字向右翻页 |
Enter | 回车 | Shitf | 字符切换 |
ESC | 退出 | Space | 空格 |
Clear | 删除所有输入 | ||
Delete | 删除单个字符 |
字符:按键类型为字符时,可填入字符,如填入“q1”两个字符,当SysKBSelect=0,字母模式时,键码为q;当SysKBSelect=1,字符模式时候,键码为1。
图库状态:√
- 弹起图库:关联图库图标索引
- 按下图库:关联图库图标索引
- 裁剪:√
- 使用文字:√
- 将“字符”一栏填入的字符直接显示出来
3.1 字符/Shitf
字符即是点击输入的键值,最多可以填4个字符,多字符间的切换,可搭配“Shitf”、或系统寄存器“SysKBSelect ”实现。
假设填入字符3个:“a~^”
3.1.1 字母键盘
若“SysKBSelect =0 ”时,字母键盘;“Shit = 0”,此时点击a, 录入为“a”,如下所示
若“SysKBSelect =0 ”时,字母键盘;“Shit = 1”,此时点击a,键盘的字母全部显示为大写, 录入为“A”,如下所示
3.1.2 数字/符号键盘
若“SysKBSelect =1 ”时,数字符号键盘,"Shit=0",此时点击a, 录入为“~”,如下所示
若“SysKBSelect =1 ”时,数字/符号键盘,"Shit=1",此时点击a, 录入为“^”,如下所示
3.1.3 中文键盘
若“SysKBSelect =2 ”时,中文模式,"Shit=0",此时点击a,"SysKBPinyin=a",SysKBHanzi显示预选汉字,如下所示:
若“SysKBSelect =2 ”时,中文模式,"Shit=1",此时点击a,此时点击a,键盘的字母全部显示为大写, 录入为“A”,如下所示
3.2 Left/Right
Left、Right搭配SysKBPinyin/SysKBHanz 章节一起配置,用于中文输入时,在预选汉字左右翻页选择
3.2.1 预览
在中文键盘,输入da,可有显示“大 打 达 答 搭 ....”等字符,通过左翻页按钮显示具体的字符,如下所示
3.2.2 配置
键盘界面,添加2功能按钮,选择虚拟按键,分别关联Left、Right,配置如下所示
3.3 切换键盘
键盘画面可以虚拟按键进行切换,不同的键盘使用不同的布局显示。例程中,建立3个画面“105_abc”、“106_number”、“107_char”,用来键盘间的切换。
3.3.1 预览
点击"ABC"、“!?#”、“123”进行切换不同布局的键盘功能,如下所示
3.2.2 配置
键盘界面,如“中英文输入”键盘,添加两个功能按钮,配置如下所示
3.4 其他
Enter、ESC、Clear、Delet、Space等功能键,功能按钮配置为“虚拟按键”,选择对应的功能键即可
4 弹出键盘应用
前文介绍,自定义键盘有两种形式,如下所示:
通过SysKBSelect切换:如系统自带全键盘,UI布局固定,配合“Shift”切换字符。
通过虚拟按钮键“切换键盘”:如DEMO中的“105_abc”、“106_number”、“107_char”,UI布局不一样。
4.1 SysKBSelect 切换
DEMO中在“104_all”界面中配置,样式和全键盘类似,一套UI图片,配置所有键盘(数字字符、字母、中文输入)布局。显示效果如下所示
4.2 虚拟按键 切换键盘
4.2.1 配置
启用输入:√
键盘类型:弹出键盘,选择“104_all”,如下所示:
4.2.2 运行
DEMO中在“105_abc”、“106_number”、“107_char”界面中配置,对数字字符、字母、中文输入有不同的布局,显示效果如下所示
5 圆角键盘(全透PNG背景)
若键盘样式需要圆脚,且弹出键盘在非键盘区域,要有一层半透(蒙版)效果,配置如下
- 键盘页面背景为透明
- 添加一个png图片,作为键盘背景
Lua脚本初始化,代码如下所示
function on_init() --set_popwnd_mask(alpha) --alpha:1~100 set_popwnd_mask(68) end
显示效果如下所示:
6 外接键盘应用
外接键盘是指不弹出键盘,直接在键盘配置页,点击文本控件,显示输入光标,输入键值即可。
[!note|tip:注意:]
外接键盘无需添加到键盘管理,可当做普通画面处理
6.1 配置
数值控件配置如下所示:
启用输入:√
键盘类型:外接键盘,如下所示:
6.2 预览
运行虚拟屏,点击文本,即点击虚拟按钮输入键值,显示效果如下所示