|
|
问题是这样的:
现在我在CEGUI的EditBox里进行中英文输入,然后用getText()函数得到输入框的text
CEGUI::String CEGUIText = pWin->getText(); 得到的类型是CEGUI::String
CString cstringText = pWin->getText(); 得到的类型是CString,中文字符转到这里在VS看起来已经是乱码了,然后和FWQ交互的时候,协议不能够传CEGUI::String类型的东西,只好传std::String,只好强转,其他客户端再得过来设置到CEGUI上就是同上的乱码了
想了下 现在的问题应该就是CString能正确的转成CEGUI::String 而CEGUI::String不能转化成正确的CString 然后我尝试用char数组得了下它
char* a = (char*)pWin->getText().c_str();
int len = strlen(a);
一个中文字符的大小是3,按道理应该是4啊,没辙了。。。。
小弟新手,见笑了,还请免费打工仔大大指导下
CEGUI::String应该有个通用的ToCString方法 [em4] |
|