主题 : QT 4.7 做的应用程序,在弹出的MessageBox中的中文显示乱码 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 38551
精华: 0
发帖: 74
金钱: 370 两
威望: 74 点
综合积分: 148 分
注册时间: 2011-02-26
最后登录: 2011-12-27
楼主  发表于: 2011-03-15 21:58

 QT 4.7 做的应用程序,在弹出的MessageBox中的中文显示乱码

QT 4.7 做的应用程序,在弹出的MessageBox中的中文显示乱码,
不知道为什么是乱码?主窗体运行正常,是中文的!
级别: 侠客
UID: 38551
精华: 0
发帖: 74
金钱: 370 两
威望: 74 点
综合积分: 148 分
注册时间: 2011-02-26
最后登录: 2011-12-27
1楼  发表于: 2011-03-16 14:18
没有人知道吗?
级别: 侠客
UID: 38551
精华: 0
发帖: 74
金钱: 370 两
威望: 74 点
综合积分: 148 分
注册时间: 2011-02-26
最后登录: 2011-12-27
2楼  发表于: 2011-03-16 21:13
解决办法:
Qt Creator 4.7 版本的 字符解码标准是: vesion="1.0" encoding="UTF-8"

所以  要在main.cpp中的main 函数内开头处写上
  QTextCodec* qc= QTextCodec::codecForName("utf8");
  QTextCodec::setCodecForLocale(qc);
  QTextCodec::setCodecForCStrings(qc);
  QTextCodec::setCodecForTr(qc);

或者只写如下一句即可:
QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));