若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/111831179
长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…
合作案例专栏:案例分享(体验Demo可下载,只定制)
需求
1. 全屏软键盘;
2. 输入英文;
3. 输入中文;
4. 支持触摸、键盘和输入混合输入;
5. 目前有黑色系皮肤;
6. Qt4和Qt5区分2个版本;
7. 兼容国产麒麟系统;
补充
整体代码是重构版本,代码风格好,所见即所得。
将代码和可视化界面进行分离,直接设计器可以修改布局,用代码修改键盘,方便之后的二次定制开发。
追加需求(2024年06月28日)
1.Qt5版本兼容Qt6(下载的资源是Qt5的,没有更新支持Qt6的运行版本了),需要可联系。
追加需求(2024年07月14日)
1.兼容麒麟系统。
相关博客
《案例分享:Qt中英文输入法、Qt中文输入法虚拟键盘、软键盘(支持Qt4、Qt5、Qt6触摸和键鼠混合输入,支持麒麟系统)》
《案例分享:Qt多国语言输入法软键盘》
Demo:国产麒麟
Demo:Qt6
Demo:Qt5
CSDN(粉丝免积分下载):https://download.csdn.net/download/qq21497936/13945327
QQ群:1047134658(点击“文件”搜索“softKeyboard”,群内与博文同步更新)
Demo:Qt4
移植到MCGS嵌入式工控机上
arm下部署注意
注意依赖文件夹的拷贝
在其本身Qt的依赖外,还需要额外复制两个文件夹到目标应用文件夹下:
其中,dict是词典数据库,输入法输入中文的时候会调用该文件夹的词典(少数客户出现键盘有则没有词库,无法中文出来就是这个文件夹得文件没拷贝,记得检查与原始文件得大小,确保拷贝过去之后和原始文件一样大小)。
platforminputcontexts是输入法的平台插件,此插件才可以弹出虚拟键盘(少数客户出现键盘无法弹出,因为里面有连接文件,推荐压缩包或者copy -arf拷贝文件夹)。
以上这2个文件夹需要复制,一般都可以了。
拷贝之后还不行,检查拷贝文件
因为交叉编译的出来的是四个文件,拷贝的时候有可能只能拷贝实体文件(跟linux的copy机制有关系)
这是交叉编译生成的:
对于不了解系统读者,解释下:linux下一般是.so 连接到 .so.1 连接到.so.1.0 连接到so.1.0.0,系统查找的是.so,以此来连接到具体某个版本的库,一般只有.so.x.x.x是实体,这点注意。(本质是要连接到实体文件,左边三个是依次软链接的)。
有时候系统问题,无法拷贝如下:
则可以将copy过去的libplatformInputContext.so.1.1.0改为libplatformInputContext.so来让系统连接到即可。
以上都确认还不行(如果还不行,请重新删除并重走前面2个方法至少一次用以确认,还不行则继续看本条)
如果还不行,就是嵌入式系统本身部署的库不全,因为platforminputcontexts里面的插件本身也是依赖很多库的:
建议一刀切给这个插件的依赖库打一次包,具体方式可参考:《统信UOS系统开发笔记(七):在统信UOS系统上使用linuxdeployqt发布qt程序》中的“linuxdeployqt打包流程(arm看可以,本次pc版本失败)”打包章节,使用手动添加QMAKE_RPATHDIR编译和建立qt.conf的方式。
V1.2.0
ui界面
代码风格
若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/111831179