WINCE多语言接口(MUI)的实现

来源:互联网 发布:电脑网络异常wifi能用 编辑:程序博客网 时间:2024/06/04 22:09
Multiling User Interface(MUI)是多语言用户界面,WINCE支持MUI,这样可以让用户改变语言用户界面,比如从英文用户界面改为中文用户界面。WINCE系统为了实现此功能,MUI使用一个包含了系统默认支持语言的单一内核二进制文件(single core binary,NK.bin),也包含了每种附加语言对应的资源动态链接库。

 

WINCE设备采用系统默认语言启动,如果想切换为另一种语言,就先切换并且硬件重启或是软件重启之后才有效。因为不同显示语言的切换需要重新用新语言的资源文件来创建窗口、菜单和对话框。除此之外,为了保证支持多种语言,还要确保有对应的字体和特定于本地语言环境的信息(locale-specific information)

假设我们当前的系统要支持英文、中文简体、日语和俄语,下面就介绍具体的实现步骤:

 

1.  添加对应的字体

英语和俄语采用的字体如下图:

图1

中文简体对应的字库如下:

图2

日语对应的字库如下图所示:

图3

 

2.  添加对应的locale

WINCE系统支持多种不同的locale,对每种特定locale的支持包括字体、键盘及键盘驱动、输入法编辑器(Input Method Editors,IME)和输入法(Input Methods,IMs),WINCE支持的locale如下:

·         Arabic

·         Chinese (Simplified)

·         Chinese (Traditional)

·         English (U.S.)

·         English (Worldwide)

·         French

·         German

·         Hebrew

·         Indic

·         Japanese

·         Korean

·         Thai

到“Project->Properties”,会弹出一个对话框。左侧的列表中选择”Local”,在右侧选择所要支持的语言,这里我选择了英文、中文简体、日语和俄语四种语言。在”Default Locale:”中选择系统的默认语言,这里选择的是中文,

如下图:

 

图4

3.  添加MUI组件

MUI组件对应”Core OS”->”CEBASE”->”International”->”Multilingual User Interface(MUI)”,如下图:

图5

 

4.  编译并创建MUI资源文件

 

选择clean sysgen重新编译工程,编译成功后,打开工程的release目录,调用createmui命令来创建多种语言的资源文件,每种语言对应一个LCID(语言代码标示符),其中英语是0409,中文简体是0804(中文繁体是0404),日语是0411和俄语是0419,命令如下:

createmui 0409,0804,0419,0411

图6

运行成功后会生成一个MultiUI.bib文件,打开该文件,拷贝所有内容到platform.bib文件MODULES部分的末尾,MutiUI.bib文件中可能包含k.coredll.dll.DLL.mui,在platform.bib文件中删除所有的k.coredll.dll.DLL.mui项。

最后重新Makeimg就可以了。

 

5.  验证

下载并运行WinCE,选择控制面板”->”区域设置”->”语言”,可以看到默认的语言是中文的,如下图:

图7

选择要切换的语言,在“区域”和“语言”这两栏中选择对应的语言,然后选择ok后重启就可以了。

原创粉丝点击