前面讲述了独立按钮以及矩阵按钮,会了前两者之后,接下来的矩阵键盘按钮可能会惊艳到你。先看仿真效果;


v_kb 键盘有 2 种模式,一种是 LV_KB_MODE_TEXT 文本键盘,另一种是 LV_KB_MODE_NUM 数字键盘,其中文本键盘复杂一些,它里面包含了小写,大写,符号三类键盘,文本键盘
中的三类键盘是通过如下方式来切换的:
1) 点击 键切换到大写键盘
2) 点击 键切换到小写键盘
3) 点击 键切换到符号



LV_SYMBOL_OK: Apply确认,对应键盘上的 键,点击会触发LV_EVENT_APPLY事件
LV_SYMBOL_CLOSE: Close 关闭,对应键盘上的 键,点击会触发 LV_EVENT_C ANCEL 事件
LV_SYMBOL_LEFT: 将光标向左移动一步
LV_SYMBOL_RIGHT: 将光标向右移动一步
** “ABC”: 切换到大写键盘
“abc”: 切换到小写键盘
“Enter”: 换行
“Bkps”: 删除光标左侧的一个字符**

这个仿真出来的键盘就是littleVGL图形化界面上的一个简单控件,几行代码就完整的将其功能实现,接下来贴出代码:

`

void kb_test(void)
{/*Create styles for the keyboard*/static lv_style_t rel_style, pr_style;   lv_style_copy(&rel_style, &lv_style_btn_rel);rel_style.body.radius = 0;rel_style.body.border.width = 3;lv_style_copy(&pr_style, &lv_style_btn_pr);pr_style.body.radius = 0;pr_style.body.border.width = 3;/*Create a keyboard and apply the styles*/lv_obj_t *btnmkeybord = lv_kb_create(lv_scr_act(), NULL);  //创建键盘控件 lv_kb_set_cursor_manage(btnmkeybord , true);lv_kb_set_style(btnmkeybord , LV_KB_STYLE_BG, &lv_style_transp_tight); //设置风格样式lv_kb_set_style(btnmkeybord , LV_KB_STYLE_BTN_REL, &rel_style); //释放下的风格lv_kb_set_style(btnmkeybord , LV_KB_STYLE_BTN_PR, &pr_style);   //按下时的风格/*Create a text area. The keyboard will write here*/lv_obj_t *tag = lv_ta_create(lv_scr_act(), NULL);lv_obj_align(tag , NULL, LV_ALIGN_IN_TOP_MID, 0, 10);lv_ta_set_text(tag , "");/*Assign the text area to the keyboard*/lv_kb_set_ta(btnmkeybord , tag );
}

具体的整个仿真工程链接如下:
工程

LittleVGL-键盘控件相关推荐

  1. ESP32 开发笔记(四)littleVGL LVGL 控件学习 Arc 弧形控件

    先看效果,创建了两个Arc 弧形控件,一个可触摸拖动的默认风格,一个动画控制的自定义风格的弧形控件 ESP-IDF版本:V4.2 littleVGL版本:V7.10.0 开发板购买链接https:// ...

  2. 想做输入法界面?安排,LVGL『keyboard键盘控件』介绍

    一. LVGL GUI键盘控件的概念 Keyboard 对象是一个特殊的 Button 矩阵,具有预定义的按键映射和其他功能,以实现虚拟键盘来编写文本. 二. LVGL GUI键盘小部件和样式 类似于 ...

  3. Touchgfx之如何打开和关闭键盘控件

    目录 1.实验环境 1.1 软件环境 1.2 硬件环境 2.实验目标 3.实验过程 4.实验总结 自定义控件之键盘教程: 一张图+一个Box+一个TextArea带你DIY不一样的数字键盘 手把手教你 ...

  4. emwin 仪表_分享一个emWin软键盘控件

    分享一个emWin软键盘控件 [复制链接] 本帖最后由 glcd 于 2016-6-27 16:30 编辑 花了两天时间做了个emWin软键盘控件,并命名为ButtonSKB控件: image001. ...

  5. C#自定义软键盘控件及应用

    自定义控件代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.D ...

  6. Android 自定义键盘控件_身份证号码输入

    效果图: 步骤: 1.继承键盘类,写一个MyKeyboardView ,备用. public class MyKeyboardView extends KeyboardView {private Co ...

  7. Android UI设计之十一自定义ViewGroup,打造通用的关闭键盘小控件ImeObser

    2019独角兽企业重金招聘Python工程师标准>>> 转载请注明出处:http://blog.csdn.net/llew2011/article/details/51598682 ...

  8. asp.net的常用控件

    ASP.NET常用第三方控件列表 ASP.NET 漂亮的免费甘特图控件 基于flash与javascript的客户端文件上传组件 在线Word/excel/wps编辑辅助控件 一个三维动态滑块效果的功 ...

  9. ESP32 开发笔记(四)LVGL控件学习 ColorPicker 颜色选择器控件

    先看效果,创建一个颜色选择器控件,设置事件回调动态显示当前选择的颜色值 开发板购买链接https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.5 ...

  10. ESP32 开发笔记(四)LVGL控件学习 Canvas 画布控件

    先看效果,创建了两个画布,一个按钮,按钮是为了演示透明画布效果, 第一个画布先画一个不透明蓝色矩形再画透明矩形,透过画布可以看到下面的按钮 第二个面布画了一个圆角矩形中间填充过渡色,再画一个字符串,然 ...

最新文章

  1. 参加“北向峰会”后对SOC之感言
  2. mega_[MEGA DEAL] Ultimate JavaScript电子书和课程包(96%折扣)
  3. python怎么new对象_Python使用__new__()方法为对象分配内存及返回对象的引用示例
  4. 使用webpack打包vue工程
  5. Linux下的OpenSSL编程
  6. mysql vb_vb连接mysql
  7. sys_brk分析 linux1.2.0版本,linux内存管理之sys_brk实现分析(续)
  8. 在Objective-C中分类对象和方法
  9. 如何用VB开发游戏外挂
  10. 如何在 Python 中调用函数?九种方法任你挑选
  11. RNN的数学符号(Notation)
  12. 三重积分(Triple Integral)
  13. 数据分析-北京房价项目
  14. 常用密码学论文查找网站
  15. iphone 如何运行android,iPhone成功运行Android,厉害~
  16. carla--使用python进行carla交互仿真
  17. 没有网络电脑计算机还能用吗,电脑连不上公用网络怎么办
  18. iToo Software推出Forest Pack 6
  19. openwrt拨号上网设置
  20. mysql级联删除外键约束_mysql通过外键级联删除

热门文章

  1. google搜索自己博客文章小记
  2. 电脑右下角音量键打不开,调不了音量大小的解决方法
  3. php 睡眠,win10系统睡眠和休眠有什么区别
  4. 电脑如何接受邮件服务器,如何设置邮箱服务器?IMAP、POP3有何区别?
  5. 自制Tableau数据看板示例
  6. xp怎样修改计算机mac地址,xp系统怎么修改mac地址
  7. IC卡读写器的应用有哪些?
  8. 阿里云商标注册申请智能、顾问和安心区别及选择攻略
  9. 微型计算机的 CPU主要由两部分构成,微机是由哪两部分组成
  10. window微信双开