实验24 多控件键盘输入实验
1. 实验目的
当有多个控件需要键盘输入时,使用状态管理为不同的控件赋值
2. 实验工具
任意三易串口屏,本例程采用的型号为SANY-WV-S43-05M-C
英文数字键盘
VP开发软件
3. 页面设计
3.1 page0:
3.2 添加键盘:
在vp界面左下角资源区 键盘栏,点击上方添加,选择英文数字点击确定,进入编辑中将键盘尺寸缩放至(600*360)点击确定。
在编辑中点击确定即可添加键盘。
3.3 控件功能简介:
控件名称 |
控件类型 |
控件功能 |
---|---|---|
text |
文本 可见 |
显示文本,调用键盘并设status状态为1 |
num |
整数 可见 |
显示整数,调用键盘并设status状态为2 |
numf |
浮点数 可见 |
显示浮点数,调用键盘并设status状态为3 |
keyboard |
键盘 可见 |
通过status状态为不同的控件赋值 |
status |
变量 不可见 |
存储状态值 |
4. 逻辑实现
点击文本控件时,应调用键盘并对status赋状态值。
文本控件弹起事件脚本如下:
status.val = 1;//文本输入
keyboard.y = 120;//调用键盘
点击整数控件时,也需调用键盘并对status赋状态值。
整数控件弹起事件脚本如下:
status.val = 2;//整数输入
keyboard.y = 120;//调用键盘
点击浮点数控件时,同样需调用键盘并对status赋状态值。
浮点数控件弹起事件脚本如下:
status.val = 3;//浮点数输入
keyboard.y = 120;//调用键盘
调用键盘输入完成后,根据status状态值为控件赋值,并清空、隐藏键盘。
输入完成脚本如下:
if(status.val == 1)//赋值到文本
{
text.txt = keyboard.txt;
keyboard.txt = "";//清空键盘
}
else if(status.val == 2)//赋值到整数
{
num.val = stringToInt(keyboard.txt);
keyboard.txt = "";//清空键盘
}
else if(status.val == 3)//赋值到浮点数
{
numf.valf = stringToFloat(keyboard.txt);
keyboard.txt = "";//清空键盘
}
keyboard.y = 481;//隐藏键盘
若取消输入,直接清空键盘并隐藏即可
输入取消脚本如下:
keyboard.txt = "";//清空键盘
keyboard.y = 481;//隐藏键盘
5. 实验结果
点击编译,查看调试。
调试无误,点击下载,查看串口屏演示。