标题:中文在没有安装QT的操作系统显示为乱码,请高人指点!
作者:radon2awp
日期:2010-07-03 16:11
内容:
代码很简单,一个QDialog,里面一个QLabel,但在我做开发的机子上是好的,拿到没有安装开发环境的机子上就显示为乱码了。
请达人指点一下。GB2312和GBK都试过了,只在我自己的操作系统上正常。
#include
#include
#include
#include
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec *codec = QTextCodec::codecForName("GB2312");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
QDialog dlg;
QLabel lb(&dlg);
lb.setText("你好");
dlg.show();
return a.exec();
}
#1 [ninsun 07-03 16:24]
QTextCodec *codec = QTextCodec::codecForName("system");
试试这个...
还有, 中文最好是用 tr("中文") 这种格式.
#2 [dbzhang800 07-03 16:34]
程序发布时别忘了插件!!
http://hi.baidu.com/cyclone/blog/item/d77a86182fb915b84bedbc57.html
#3 [beaujolais 07-04 19:12]
习惯使用QTranslator
#4 [radon2awp 08-03 16:06]
感谢!
用1楼的办法搞定了.
同时感谢2楼,加入插件才是王道