当用QTCreator进行中文处理的时候,会无法正常显示中文,例如代码:
ui->pushButton->setText("设置参数");
程序运行后,按键上的内容显示为乱码
用以下方式可以完美解决此问题:
在main文件中加入以下代码即可:
#include <QTextCodec>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
MainWindow w;
w.show();
return a.exec();
}
加入蓝色的代码即可。
在linux环境中需要加入以下代码:
int main(int argc, char *argv[]){
QApplication a(argc, argv);
// QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
QTextCodec *utg8 = QTextCodec::codecForName("utf-8");
QTextCodec::setCodecForTr(utg8);
QTextCodec::setCdoecForLocale(utg8);
QTextCodec::setCodecForCStrings(utg8);
w.show();
return a.exec();
}