AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章进行解答。
假设目前需要在AWTK程序中用到中文输入法,并且要自定义输入法的联想词,此时需要用到AWStudio添加软键盘和输入法。下面将介绍如何使用AWStudio在项目中添加中文输入法以及如何修改联想词,并且如何移植到嵌入式设备中。下图是实现中文输入法并移植到 ZTP800示教器 的效果图:
图 1 ZTP800中文输入法效果图
在AWStudio中带有软键盘的默认样式,用户可以直接使用该软键盘样式。创建该默认软键盘也比较简单,只需点击AWStudio的“新建窗体”按钮,接着选择“Keyboard”,确定后即可看到软键盘的UI文件生成。图 2 AWStudio添加默认软键盘接着还需要从awtk/3rd/gpinyin/data目录将gpinyin.dat文件添加到项目资源目录的data目录下,例如:res/assets/default/raw/data,这里可以在AWStudio的资源管理器中点击“导入”按钮添加到“其他数据”分类中。最后将软键盘与控件关联,修改edit控件的“keyboard”属性指定刚刚创建的软键盘窗体。
图 3 使用AWStudio导入gpinyin.dat
联想词是指在输入了某个汉字或词组后,输入法根据该汉字或词组提供其常用的组词。如果想要修改联想词的顺序或是增加新的词语等,需要修改awtk/3rd/gpinyin/data目录下的配置文件rawdict_utf16_65105_freq.txt。配置文件中包含了各个词语的汉字、使用频率和对应的拼音,使用频率数值越大,对应的联想词越靠前。例如:下图的“爸爸”使用频率数值大于“巴巴”,那么当输入“baba”拼音时,“爸爸”的显示顺序会比“巴巴”靠前。
图 4 联想字库配置文件
修改完配置文件后,在awtk目录下打开终端,执行以下命令,该程序会生成一个新的gpinyin.dat,按照前面步骤拷贝到项目资源目录,如:assets/default/raw/data/。
./bin/gpinyingen
嵌入式Linux的官方移植层awtk-linux-fb默认加入了中文输入法,用户在PC上根据文章前面步骤添加好中文输入法,使用AWStudio打包资源,将项目拷贝到交叉编译环境下使用awtk-linux-fb交叉编译应用即可。
对于其它平台如RTOS平台添加中文输入法的步骤会复杂一些,需要将中文输入法相关的代码文件加入编译(比如将这些代码文件添加到keil编译),详细步骤如下:
WITH_IME_PINYIN
另外还需要取消以下两个宏的定义:
全部0条评论
快来发表一下你的评论吧 !