Windows CE 的多语言支持

 

Windows CE 提供了 MUI(Multilingual User Interface),用于开发多语言系统和程序

    详细见Wince帮助

    Windows CE Features\International\Multilingual User Interface(MUI)

    系统方面:

    ———

    PB 中创建一个工程后,菜单 Platform -> Settings,选择需要的 Locale 和 语言,并设置默认语言,要注意的是,如果选择了东亚语言,需要把东亚语言设置为默认。

    在Catalog窗口添加MUI、相关字体、输入法等等

    sysgen 后,Open Release Directory,执行 createmui 0409 (创建英语语言的资源文件,默认不是英语的情况下)。打开文件生成目录Emulator_X86Release,复制 multiui.bib 中的所有内容到 common.bib 的最后。然后,Make Run-Time Image

    最后下载到模拟器中,记得在 Target Device Connectivity Options  中取消选中Clear memory on soft reset。这样语言才能切换。

    模拟器中wince起来以后,在控制面板的区域设置中设置语言和Locale,也可以自己调用API,如下:

    12345 view plaincopy to clipboardprint? <SPAN style="COLOR: rgb(0,0,255)">unsigned</SPAN> <SPAN style="COLOR: rgb(0,0,255)">short</SPAN> SLANGID = MAKELANGID<SPAN style="COLOR: rgb(0,0,0)">(</SPAN>LANG_CHINESE,SUBLANG_CHINESE_SIMPLIFIED<SPAN style="COLOR: rgb(0,0,0)">)</SPAN>;<BR>SetUserDefaultLCID<SPAN style="COLOR: rgb(0,0,0)">(</SPAN>SLANGID<SPAN style="COLOR: rgb(0,0,0)">)</SPAN>;<BR>SetSystemDefaultLCID<SPAN style="COLOR: rgb(0,0,0)">(</SPAN>SLANGID<SPAN style="COLOR: rgb(0,0,0)">)</SPAN>;<BR>SetUserDefaultUILanguage<SPAN style="COLOR: rgb(0,0,0)">(</SPAN>SLANGID<SPAN style="COLOR: rgb(0,0,0)">)</SPAN>;<BR>PostMessage<SPAN style="COLOR: rgb(0,0,0)">(</SPAN>HWND_BROADCAST, WM_WININICHANGE,<SPAN style="COLOR: rgb(0,0,221)">0</SPAN>, INI_INTL<SPAN style="COLOR: rgb(0,0,0)">)</SPAN>;

    unsigned short SLANGID = MAKELANGID(LANG_CHINESE,SUBLANG_CHINESE_SIMPLIFIED);SetUserDefaultLCID(SLANGID);SetSystemDefaultLCID(SLANGID);SetUserDefaultUILanguage(SLANGID);PostMessage(HWND_BROADCAST, WM_WININICHANGE,0, INI_INTL);

    1 view plaincopy to clipboardprint? <SPAN style="COLOR: rgb(255,0,0)">// EnumUILanguages 列出系统支持的语言</SPAN>

    // EnumUILanguages列出系统支持的语言

    最后 Soft reset,系统界面的语言就改变了

    应用程序方面

    ————

    创建一个应用程序工程,把自带的资源改成中文,生成 Myapp.exe

    创建一个dll工程,纯资源的。setting里link 选项加上 /NOENTRY,编译出dll文件,改名为 Myapp.exe.0409.mui(以美国英语为例),放在myapp.exe同目录下。

    这样就OK了,假设系统默认语言是中文,按前面的方法切换系统Locale和语言为英语,soft reset后,Myapp.exe会变成英语界面,如果 Myapp.exe.0409.mui不存在,依然为中文界面。

    其他

    —-

    MUI的缺点是要重启程序才能改变界面,因为要重新加载资源

    Soft reset 模拟器是可以,具体设备不知是否支持

    http://www.zhanghu.org/2008/01/08/wince-mui/

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xumercury/archive/2008/05/26/2482752.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值