Qt⾃⼰编写keyboad虚拟键盘
由于项⽬中有需要⽤到虚拟键盘,⾸先想到的是系统⾃带的,笔者是Ubuntu16+Qt5.9。
1.系统虚拟键盘的优缺点:
优点:直接可以脚本调起,功能完善,稳定。外观完美。
缺点:定制⿇烦(详情看onboard帮助⽂档,英⽂),要想像⼿机那样⽤时⾃动显⽰,不⽤时⾃动隐藏,需要先设置系统的输⼊法,⽽且需
要GNome的辅助功能⽀持。
5已经有⾃带输⼊法了。Qt安装的时候就有⼀个virtualkeyboard选项,安装即可,编译⽣成完了,会在安装⽬录的
plugins/plaforminputcontexts⽬录下。
优点:美观,⽅便,功能完善,跨平台,⽀持中⽂
缺点:定制的话在于改源代码的能⼒了,这是⼀个基于qml开发的插件,所以如果是widget使⽤的话需要⽤qquickwidget组件包装才能正
常调出键盘。
3.⾃⼰写⼀个plaforminputcontextsplugin
这个呢,⾮常感谢下⾯两篇连接的作者,链接如下:
优点:能实现简单定制键盘,可以了解并学习Qt插件开发规则
缺点:该input插件依赖DBus通信,⽽windows对DBus⽀持有很多问题要解决,
所幸Ubuntu是没问题的(好像搜狗的拼⾳,也是有开发Qt插件的,在linux平台的Qtcreator⽀持上,否则搜狗也是不能⽤于
QtCreator的中⽂输⼊)
4.在3的基础上⾃⼰封装定制dll
在应⽤程序中添加本地库到当前⼯程,在pro⽂件中加以下类似代码:
LIBS+=-L$$OUT_PWD/../keyboard/debug/-lkeyboard
然后在主程序中调⽤即可
intmain(intargc,char*argv[])
{
QApplicationa(argc,argv);
KeyboardobjKeyboard;//创建对象
gital();//显⽰数字键盘
MainWindoww;
();
();
}
优点:⾃由定制,重复利⽤,跨平台。最后上个效果图。
本文发布于:2023-03-02 07:47:03,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1677714424108394.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:手机虚拟键盘.doc
本文 PDF 下载地址:手机虚拟键盘.pdf
留言与评论(共有 0 条评论) |