1. 前言
在编写Qt应用程序时,有时会希望能直接设置中文字符串到界面,总结下其设置方法。
2. 设置中文
1)运行环境Qt5.5 VS2013
2)首先,查看需要设置中文的文件是否为UTF-8格式,是的话可直接设置中文
3)如果文件非UTF-8格式,可在文件中增加如下指令,按UTF-8格式解析文件
#pragma execution_character_set("utf-8")
注:每个有设置中文字符串的文件中都需要增加
4)运行效果如下
3. 注意事项
如果为Qt4及以下版本,需要在main函数中设置采用的编码格式,才能显示中文,设置方法如下
1 #pragma execution_character_set("utf-8")
2
3 #include "Widget.h"
4 #include <QApplication>
5 #include <QTextCodec>
6
7 int main(int argc, char *argv[])
8 {
9 QApplication a(argc, argv);
10 a.setFont(QFont("Microsoft Yahei", 9));
11
12 #if (QT_VERSION <= QT_VERSION_CHECK(5,0,0))
13 #if _MSC_VER
14 QTextCodec *codec = QTextCodec::codecForName("gbk");
15 #else
16 QTextCodec *codec = QTextCodec::codecForName("utf-8");
17 #endif
18 QTextCodec::setCodecForLocale(codec);
19 QTextCodec::setCodecForCStrings(codec);
20 QTextCodec::setCodecForTr(codec);
21 #else
22 QTextCodec *codec = QTextCodec::codecForName("utf-8");
23 QTextCodec::setCodecForLocale(codec);
24 #endif
25
26 frmSwitchButton w;
27 w.setWindowTitle("设置中文");
28 w.show();
29
30 return a.exec();
31 }
设置中文