以下说的只是自己的一些总结,不对了或不全面还望指正。
在qt4里,显示中文的话得分几种情况,比如某个窗体上的标题的中文,比如窗体中的按钮或标签的文本,或普通对话框以及弹出对话框的中文,还有右键菜单的中文等。但觉得你卡好最后一关了就能应对大部分中文界面的问题了,那这最后一关就是QApplication app(argc, argv)。
在你写的程序中的主函数里肯定有这句话吧?那么就设定好app对象的语言就能把之前说的那些卡住了。(我开始不知道,设置了某个widget的语言,结果后来弹出的对话框中文还是乱码了)。
QTextCodec::setCodecForTr(QTextCodec::codecForName(“gb18030″));
QFont font(“Times”,10,QFont::Normal,FALSE);
app.setFont(font);
就上面的3句话就ok了,而且是在qt4环境下(网上有个方法只能在qt3下,而许多网站都是用可恶的信息采集程序采集了文章,结果使得没用的结果充满了搜索引擎结果的前面很多页)。所以我在这一再反复是qt4下。
另外再记得注意在中文字符串前都加上tr就好了,比如tr(“中文”)。
做个笔记,方便自己,也方便他人。