当前位置: 首页 > news >正文

实验21 自定义键盘实验

1.实验目的

通过自定义键盘实现定制化键盘,契合用户项目工程

2.实验工具

  1. 任意三易串口屏,本例程采用的型号为SANY-WV-S43-05M-C
  2. 键盘图片,包括正常状态和按下状态,本例程采用默认键盘图片

3.键盘设计

中文键盘:

(1)在VP界面左下角资源区 选择键盘栏,点击上方添加按钮,选择“全键盘(支持中文)”方便自定义,点击确定。

(2)例程只需要中文键盘,在分组管理中可以将其他分组键盘(1、2、4、5)删除,只保留中文键盘(3)。此处可根据具体项目工程进行删改。

(3)在分组管理中勾选 显示按下图片 即可预览按下时的键盘图片。

(4)如果不想采用默认键盘图片,可在分组管理中替换默认图片、按下图片等。本例程采用默认图片。

(5)在按键管理中可选择按键进行属性修改,要进行中文输入必须勾选支持输入法,且预览区上方也必须勾选启用输入法支持。对于一些其他按键(如符号、数字、中英切换等无关按键)可删除,因为已经将符号、数字、英文等分组键盘删除,此时点击将不会切换到对应键盘。同样可在预览区中点击并查看、修改属性。

(6)在文本框中可以管理输入框、候选输入框、候选区等,点击即可修改属性。确保字体支持中文。同样可在预览区中点击并查看、修改属性。

(7)点击上方字典属性,即可在对应的拼音处添加中文。

(8)点击确定即可生成键盘。

(9)在工具箱中拖出一个文本控件、一个键盘控件。此时键盘控件将会默认选择创建好的中文键盘。将键盘移除显示区域,修改键盘控件名称为“keybC”。 修改文本控件名称为“Chinese”。

在文本弹起事件中编写

keybC.x=0;
keybC.y=0;//重新调用键盘

在键盘输入完成事件中编写

Chinese.txt=keybC.txt;
keybC.txt="";
keybC.x=-801;//输入完成显示到文本控件并清空、隐藏键盘

在输入取消事件中编写

keybC.txt="";
keybC.x=-801;//直接清空、隐藏键盘不显示

英文键盘:

(1)在VP界面左下角资源区 选择键盘栏,点击上方添加按钮,选择“全键盘”方便自定义,点击确定。

(2)本例程只需要英文键盘,在分组管理中可以将其他分组键盘删除,只保留英文大小写键盘。此处可根据具体项目工程进行删改。

(3)在分组管理中勾选 显示按下图片 即可预览按下时的键盘图片。

(4)如果不想采用默认键盘图片,可在分组管理中替换默认图片、按下图片等。本例程采用默认图片。

(5)在按键管理中可选择按键进行属性修改,此时无需勾选支持输入法,且预览区上方也无需勾选启用输入法支持。对于一些其他按键(如符号、数字、等无关按键)可删除,因为已经将符号、数字等分组键盘删除,此时点击将不会切换到对应键盘。同样可在预览区中点击并查看、修改属性。

(6)在文本框中可以管理输入框,点击即可修改属性。同样可在预览区中点击并查看、修改属性。此时候选输入框、候选区不可选中。

(7)在上方看到缩放按钮,点击并输入即可进行缩放键盘(任意键盘均可缩放),本例程默认800*480。

(8)点击确定即可生成键盘。

(9)在页面复制文本控件和键盘控件。首先,需要调整控件的显示图层(ID大小),文本id 小于 键盘id,否则会出现文本控件遮挡键盘的情况。此时需要将复制的键盘修改为创建好的英文键盘。将键盘移出显示区域, 修改键盘控件名称为“keybE”。 修改复制的文本控件名称为“English”。

将“English”文本弹起事件中编写

keybE.x=0;
keybE.y=0;//重新调用键盘

在键盘输入完成事件中编写

English.txt=keybE.txt;
keybE.txt="";
keybE.x=801;//输入完成显示到文本控件并清空、隐藏键盘

在输入取消事件中编写

keybE.txt="";
keybE.x=801;//直接清空、隐藏键盘不显示

(10)在资源区键盘栏,可自定义键盘名称。

4.点击编译,查看调试。

点击上方文本弹出中文键盘,输入”A(锕)“,可以看到中文字符没有正常显示。点击下方文本弹出英文键盘,输入”AAAaaa“,英文字符则正常显示。

此时需要在"Chinese"文本中选择支持中文的字库,当选择创建中文键盘时会自动添加中文字库。

再次编译调试,再次输入,即可正常显示。

  1. 点击下载,查看串口屏演示。
http://www.cnnetsun.cn/news/2672329.html

相关文章:

  • 抖音批量下载终极指南:免费工具5分钟搞定无水印视频
  • Red Panda Dev-C++:轻量级C++ IDE的终极解决方案,让Windows C++编程变得简单高效
  • 【Mysql】SQL优化最佳实践
  • 别再死记硬背公式了!用Python可视化带你直观理解两个高斯分布相乘(附Matlab/NumPy代码)
  • 告别绿屏!Win11重装或升级到11代CPU,这个RAID驱动你必须提前准备好
  • 如何将QQ音乐加密文件转换为通用音频格式:qmc-decoder完全指南
  • Obsidian PDF++:重新定义你的PDF知识管理方式
  • 完整QQ音乐音频解密教程:qmcdump让你的加密音乐文件重获自由播放能力
  • 从裸机到RTOS:手把手教你为正点原子Nano STM32F103移植RT-Thread Nano内核(MDK5环境)
  • 3分钟快速移除Windows Defender终极指南:告别烦人弹窗和性能占用
  • 收藏 | 产品经理必看:从功能设计到任务设计,掌握大模型时代的产品开发新范式
  • Windows Cleaner终极指南:3个简单步骤让你的电脑告别卡顿和空间不足
  • 2026 零基础网络安全学习路线:从入门到上岗,保姆级实战教程
  • 从零构建AI日程管家:基于GPT-4与自动化工具的个人效率系统实践
  • 72.跨版本刷机原理全解|Android10-14/iOS16-18 Bootloader与DFU底层机制
  • 别再只填频率和位宽了!ZYNQ MPSoC DDR4配置中那些容易被忽略的‘小参数’详解
  • 大数据如何重塑医疗、法律、零售三大传统行业:从技术原理到实战落地
  • 飞书机器人集成 OpenClaw 智能电脑控制实战
  • 如何告别网盘下载限速?三分钟掌握高效文件获取方案
  • Beyond Compare 5授权密钥生成完整指南:三步实现专业文件对比工具永久激活方案
  • 抖音批量下载工具深度解析:如何高效获取无水印内容
  • 怎样快速搭建个人抖音视频解析服务:完整实战指南
  • 收藏了很多机器视觉知识,为什么一做项目就卡住?
  • 终极NCM文件解密指南:ncmdumpGUI图形界面工具完整使用教程
  • 手把手教你用xdisp_virt在Windows上接收iPhone投屏,还能反向控制(附蓝牙驱动配置)
  • AI聊天机器人实战:从零构建驱动业务增长的智能对话系统
  • 手把手教你用信号源和示波器DIY一个简易TDR,实测同轴电缆阻抗(附避坑指南)
  • 从‘打包后’到‘真机上’:Unity Profiler移动端性能调优全流程实录
  • STM32F103C8T6 全参数深度解析
  • 别再死记硬背了!用这5个高频Docker命令场景,帮你彻底搞懂容器操作