Qt程序中部分地方支持中文,部分地方不支持
在程序中的main函数里设置了:
int main(int argc, char *argv[]){ QApplication a(argc, argv); QTextCodec *codec = QTextCodec::codecForName("utf-8"); QTextCodec::setCodecForLocale(codec); QTextCodec::setCodecForCStrings(codec); QTextCodec::setCodecForTr(codec); MainWindow w; //我自己写的类 w.setWindowTitle("中文"); //这里不写在tr("")中也可以正常显示,不知为何 w.show(); return a.exec();}
QApplication::addLibraryPath("./plugins");QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312")); QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312")); QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
[解决办法]
记得转换的QString 都用tr() 或者Q0bject::tr
[解决办法]
http://wangningmei.is-programmer.com/posts/32988.html