游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2413|回复: 2

中文的CEGUI::String与CString的转换问题

[复制链接]

8

主题

21

帖子

27

积分

注册会员

Rank: 2

积分
27
发表于 2007-10-18 18:17:00 | 显示全部楼层 |阅读模式
问题是这样的:
    现在我在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]

18

主题

211

帖子

419

积分

中级会员

Rank: 3Rank: 3

积分
419
发表于 2007-10-18 21:48:00 | 显示全部楼层

Re:中文的CEGUI::String与CString的转换问题

我也是用的".c_str()",结果才对!

8

主题

21

帖子

27

积分

注册会员

Rank: 2

积分
27
 楼主| 发表于 2007-10-19 09:25:00 | 显示全部楼层

Re: 中文的CEGUI::String与CString的转换问题

不对吧 英文的转了是对的 中文转了之后VS只能识别成乱码
我觉的要把CEGUI::String.c_str()在底层扩展以下 也支持中文就好了
可是看了CString转成CEGUI::String是蛮简单的 反之就不容易了

我昨天又想了想 只能在协议里做文章了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-14 17:43

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表