//设置菜单状态.
pLineState->addAction(Image.copy(0,0,16,16), "在线");
pLineState->addAction(Image.copy(32,0,16,16), "隐身");
pLineState->addAction(Image.copy(48,0,16,16), "上课中");
pLineState->addAction(Image.copy(64,0,16,16), "离开");
pLineState->addAction(Image.copy(96,0,16,16), "勿扰");
//endend
所有用代码加上去的中文在界面显示都是乱码。
我用的文本编辑的编码格式是UTF-8.
同样的代码在OS X下面可以在界面正常显示中文
------解决方案--------------------
用utf-8的话应该不会出现乱码呀,你换为gb2312试试
------解决方案--------------------
在QApplication定义后面加上这句试试:
QTextCodec::setCodecForCString(QTextCodec::codecForLocal());
大概是这样。。。
------解决方案--------------------
如果你用的是非MVSC,(比如MinGW,Intel C++等)那么你应该不会遇到乱码才对。
如果你用的是MSVC,那么根据你所用的版本不同2005,2008,2010, 2012,处理方式各不相同。(而且2005、2012目前根本不支持这么做,不清楚以后会不会有补丁出来)
------解决方案--------------------
MSVC对UTF8支持非常差,而且各个版本支持的不一样。
------解决方案--------------------
恩,这种方式直接使用UTF16绕过了MSVC的UTF8问题。同时源码字符集采用带BOM的UTF8格式保存,以保持和在macx下运行正常。
不过某些较老的gcc可能不喜欢BOM。