吐血求救!!!一个WinCE程序中文显示的问题……
今日编写一WinCE程序遇到了一些麻烦。请帅哥们帮帮忙。
问题描述如下:
我有一个二进制ANSI数据文件。我的程序是按照条件从这个数据文件中检
索数据,然后将检索结果显示到一个EditBox中去。我使用的开发工具是
eVC++ 3.0,Emulator是HandHeld PC Pro Emulation和Pocket PC
Emulation。请帅哥们看清楚我的问题:
因为我现在无法将这个二进制ANSI数据文件全部改成Unicode字符集(因
为条件不允许而且改动量也太大)。所以,我只想在检索之后,将检索的结果(
其实就是一个char *型字符串而已)转换成可以显示的Unicode字符,然后显示到一
个EditBox里面去。理论上可以使用MultiByteToWideChar把char *转换为
TCHAR *,可是我发现:在使用MultiByteToWideChar转换的时候,跟踪调
试时,发现转换以后就变成乱码了。显示的结果自然也都是乱码!!无论我怎样
变换参数,乱码就是乱码。
可是,如果你在Windows下使用Ctrl+C复制一段中文文字,然后到虚拟器
上Ctrl+V,则中文就可以正常显示!!我通过程序知道了在Ctrl+V的时候,系
统就自动将之转换成了Unicode码了。但是奇怪的是:为什么我用函数转换却不
能成功呢??怎样才能正常显示中文呢??
当然,直接使用_T("神啊!救救我吧")可以显示中文,但是如何将char *
中存放的中文字串显示到诸如EditBox这样的控件中去呢??因为显示必然要使
用SetWindowText(),而它不接受char *类型的,怎么办呢??这个问题已
经困扰我半个多月了,我去了很多地方、找了很多资料,到现在还是没能解决,
请有过WinCE编程经验的朋友们一定要帮我看看这个问题,如能解决,必当重谢
!
另外,有个朋友让我把对话框和EditBox字体设置一下,可是不行啊~唉…
…
我的联系方式:
E-mail : xuyu@transtar.com.cn
QQ : 786727
Website :www.epubcn.com