Qt虚拟键盘实现教程:从集成到自定义修改
创作时间:
作者:
@小白创作中心
Qt虚拟键盘实现教程:从集成到自定义修改
引用
CSDN
1.
https://blog.csdn.net/weixin_68007995/article/details/137686272
在嵌入式开发中,虚拟键盘是常见的用户交互组件。本文将介绍如何使用开源项目QtKeyboard,在Qt项目中实现全尺寸功能键盘,并分享具体的集成步骤和自定义修改方法。
在嵌入式领域,我们可能需要在项目中设计虚拟键盘供用户使用。之前只实现过数字键盘,要实现全尺寸功能键盘,首先想到的是学习官方例程,但是官方使用QML实现。经过漫长的查找和筛选,选择使用QtKeyboard项目,该项目的GitHub地址为:https://github.com/aeagean/QtKeyboard
项目运行效果如图:
那么如何将键盘添加到自己的项目中,并按需修改呢?接下来分享具体的集成步骤:
将键盘类文件导入
打开Keyboard文件,将所有资源文件复制到自己的项目目录下,然后在项目中添加现有文件将Resource文件复制到项目目录,然后在项目中新建Qt资源文件并添加.qrc文件
在项目.pro文件下启用汉字库(可以参考源项目的.pro文件)
在需要用到键盘的页面导入头文件并声明Keyboard对象,至此我们的虚拟键盘已经建立成功
在页面中还可以添加一个QLineEdit显示数据方便保存发送到主窗口,弹出的键盘页面如下:
后续:更改样式 | 修改按钮功能
更改样式:可以在KeyButton.cpp文件找到作者的 DEFAULT_STYLE_SHEET 修改,也可以在自己的.ui文件中直接给QPushButton组件设置样式覆盖,不必多说
修改按钮功能:原Enter键是换行功能,如果需要改成保存文本并发送sendData信号,那么查阅现有代码后,找到绑定功能按键函数的部分
可以看到这里为功能按键绑定了自定义点击事件,找到Key_Enter并跳转到switchEnter(),在里面实现自己的逻辑代码。
热门推荐
前端Express框架必学之:Node.js项目搭建与接口开发实战
缠论中的笔和线段是什么意思,有什么区别?
肠胃炎高发季,中医推荐3个穴位缓解不适
蓝莓冬季需冷量不足则次年不结果,不同品种蓝莓各需要多少冷温?
公积金贷款需要连续缴纳吗?
鸿图之下:SP颜良文丑搭配攻略
家用充电桩安装线缆应该怎么选?
8月70城房价下降,房价降了作为普通人的我们能做什么
豚鼠怀孕期间应该如何保持安静和舒适?
考古学家在中国发掘了“巨人之墓”
不同材质地漏的优缺点分析
首富一日游背后:小米造车、AI千亿投入与资本帝国的三重博弈
箭牌智能马桶常见故障及维修方法
车位管理费包括哪些服务
房东提前终止租房合同该如何办手续
过年做香肠,10斤肉放多少盐?教您正确比例,香肠麻辣鲜香
人类头顶悬挂着4500吨摇摇欲坠的太空垃圾,有多大概率砸中你我?
窗帘与窗帘杆怎样搭配?这种搭配方式有什么效果?
谈钱伤爱情?我们今天来谈谈钱
家里的微波炉堪比“细菌窝”,很多人还经常不擦!快看看怎么清洁
企业贷款逾期后法人账户会被冻结吗?一文详解法律责任与应对措施
15句深刻的现实生活感悟,句句触动人心!
微信发的解除合同告知函是否有效
权威解读:包(瓶)装饮用水检测标准和限值全攻略
怕水想学游泳?了解水性、树立信心,助你战胜恐惧享受水中乐趣
胃及十二指肠溃疡吃什么食物好 怎么饮食调理治疗
白天没事,一到半夜就狂咳…很多人问题出在这个部位
数据新闻丨华北雨季的那些事儿
用户画像系统构建:从数据集成到产品化
日本收入与消费:10元人民币在日本百元店能买到什么?