Qt 开源虚拟键盘推荐

在嵌入式开发时,不能通过鼠标键盘输入是很常见的。这时候就需要通过软件层,实现软键盘和输入法来满足用户需求。不过不需要自己造轮子,网上有很多可以参考的开源虚拟键盘,即使不完全符合自己要求,也可以参考着修改下。

下面介绍本人推荐的几个虚拟键盘,如果有侵权,可以联系删除或整改。

开源虚拟键盘推荐

推荐1

Qt 官方开源了一个虚拟键盘的示例,该示例提供两种使用方式:一种用于桌面平台,另一种用于嵌入式平台,示例采用嵌入式平台方式显示。它们区别是前者脱离窗口应用于全局,后者依附于窗口。介绍博客:QML 虚拟键盘(VirtualKeyboard )

img


  • 优点:官方开源的虚拟键盘,支持英文、日语、法语、意大利语等多种语言,底层使用谷歌输入法,支持模糊拼音,拼写很智能。

  • 缺点:QML 实现,如果项目 UI 是用 QWidget 实现的话,不好嵌入;支持太多语言是把双刃剑,有时候只需要支持中英文,还要额外修改编译为只支持中英文;通过插件的形式嵌入,修改起来较为麻烦;开源版本与商业版本有差距,例如支持手写方面。

  • 下载地址:https://github.com/aeagean/QtKeyboard


推荐2

Qt君 开源的轻量级 Qt 键盘,介绍博客:轻量级Qt键盘-介绍篇 (qq.com)

img


  • 优点:纯 QWidget 实现,界面美观简洁,嵌入方便无需额外编译,博客介绍详细方便二次修改。

  • 缺点:中文拼音输入法基于 pinyin.txt 和 pinyin_phrase.txt 字库文本实现,所以未能实现模糊算法,没有其它使用谷歌拼音输入法的虚拟键盘那么智能。

  • 下载地址:https://github.com/aeagean/QtKeyboard


推荐3

风刮过冷大神提供的虚拟键盘,仿 Qt 官方的 virtualkeyboard 模块,但使用 QWidget 实现。

输入图片说明



推荐4

onlyshi 大神提供的开源虚拟键盘,重点在于支持了安卓底层的谷歌拼音输入法,介绍博客为:Qt5软键盘实现中文拼音输入法

软件截图


  • 优点:支持了安卓底层的谷歌拼音输入法,拼写很智能。

  • 缺点:直接嵌入到项目中的话,源码文件太多,除非单独把谷歌拼音输入法编译成静态库。

  • 下载地址:基于Qt5的虚拟键盘_KeyboardForm资源-CSDN文库 (本人已下载好,若有需要可以联系我)


不开源的虚拟键盘推荐

下面还介绍一个不开源的虚拟键盘,具体介绍博客为:Qt编写输入法V2018超级终结版

如果需要源码可自行联系其作者,或寻找其它途径。

img


  • 优点:纯 QWidget 编写(用到了 ui 编辑器),界面清晰简洁,UI 美观友好。
  • 缺点:不开源,字库文件庞大,高达 25MB,虽然支持的词组够多,但不支持智能模糊拼音,与使用谷歌拼音的 Qt 官方虚拟键盘还有差距。

其它虚拟键盘

Qt 虚拟键盘 QtVirtualKeyBoard - 知乎 (zhihu.com)

img


QT4、QT5下的 中文联想虚拟键盘(软键盘virtual keyboard) - 简书 (jianshu.com)

img


(19条消息) QT5自定义中英文虚拟键盘_飛越無限的博客-CSDN博客

在这里插入图片描述


总结

  • 在有轮子的情况下,我们千万不要自己造轮子,除非迫不得已。所以一般情况下,不要自己去实现虚拟键盘,费力不讨好;

  • 上面推荐的虚拟键盘都各有优缺点,需要你根据自己项目实际情况选择使用或者修改;

  • 比较推荐将 "推荐1" 和 "推荐4" 结合起来,使用 "推荐1" 的 UI 界面,添加 "推荐4" 的谷歌输入法,这样既美观简洁,又完美支持模糊拼音输入法。


参考:

(19条消息) Qt实现屏幕虚拟软键盘_qt屏幕键盘_三遍猪的博客-CSDN博客

inputmethod: 基于Qt5,支持中文拼音输入、英文输入、数字输入、常用符号输入、手写输入、实体键盘同步 (gitee.com)


posted @ 2023-07-11 16:29  fengMisaka  阅读(5951)  评论(13编辑  收藏  举报