Qt编写输入法V2018超级终结版

对于qt嵌入式linux开发人员来讲,输入法一直是个鸡肋问题,要么不支持实体键盘同步,要么不能汉字输入,要么不支持网页输入等,这几年经过陆续接触大量的各类输入法应用场景客户,获得真实需求,不断改进,最近几天特地完善了数字键盘模式+外部程序输入支持(输入到记事本QQ等程序)+网页输入支持,花了很多的心血,头发都快掉光了!目前除了还剩T9布局输入+手写输入尚未实现外,基本上算是比较完美了。市面上能作到支持任意操做系统+任意Qt版本+任意编译器的支持的,基本上没有。
功能特色:  
1:未采用Qt系统层输入法框架,首创输入切换机制。
2:纯QWidget编写,支持任何目标平台(亲测windows、linux、嵌入式linux等),支持任意Qt版本(亲测Qt4.6.0到Qt5.11.2),支持任意编译器(亲测mingw、gcc、msvc等),支持任意控件输入包括网页中的输入控件。
3:调用极为方便,pri文件调用形式,只要改为文件包含便可,例如pro文件中写 include($$PWD/inputnew/inputnew.pri)。
4:界面清晰简洁,UI美观友好,很是适合触摸设备。
5:同时支持实体键盘输入+鼠标单击输入+触摸输入。
6:支持Qt程序嵌入的浏览器中的网页中的文本框等控件的输入。
7:支持迷你模式,界面大小随意设置,采用布局自使用任何分辨率。
8:支持纯数字键盘模式,自由控制弹出完整输入法面板和数字键盘面板,只须要对控件设置属性便可。例如ui->txt->setProperty("flag", "number");
9:自由控制须要显示输入法和不须要显示输入法,当某些控件不须要弹出输入法,只须要对应不须要弹出输入法的控件设置属性noinput为真便可。例如ui->txt->setProperty("noinput", true);
10:界面自适应屏幕大小,输入法弹出位置为控件底部时,当超过桌面右边或者底部时,自动调整位置。
11:实现了长按超过500毫秒重复执行按下的键的功能。例如长按退格键,不断删除。
12:shift键切换输入法,esc键隐藏输入法,空格选中第一个汉字,回车选中输入的拼音。和搜狗输入法处理一致。
13:英文、中文、手写、数字字母、大小写、特殊字符自由切换。
14:支持单拼双拼词组输入,网上大部分只支持单个汉字输入。智能分页算法,可任意翻页查看汉字词组。
15:默认自带5种皮肤颜色,可随意切换,用户也可用QSS自定义皮肤。
16:字库文件可大可小,提供迷你版字库大小仅120KB,方便存储空间紧张的硬件,完整版字库25MB。
17:可选谷歌内核的输入法引擎,字库文件1MB,不依赖数据库,资源占用低效率极高。支持模糊拼音,好比nh=你好。
18:可选windows专有版本,支持外部程序输入,好比输入到记事本、QQ聊天窗口等。
19:整个输入法代码行数1000行左右,很是小,不会对程序增长大小形成负担。
20:代码结构极为清晰,注释详细,很是容易阅读和理解,同时也能够自行修改拓展自定义的需求。linux

开源主页:[https://gitee.com/feiyangqingyun](https://gitee.com/feiyangqingyun)git

相关文章
相关标签/搜索