环境配置:
WIN10系统
QT版本:QT4.8.6
IDE:QT Creator 3.0.0.0
编译器:Microsoft Visual C++ Compiler 9.0 (x86)
调试器:GDB(mingw32)
1,在main.cpp中添加QTextCodec类,然后调用类的三个方法setCodecForTr、setCodecForCStrings、setCodecForLocale,参数为codecForLocale().
#include "mainwindow.h"
#include <QApplication>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
2,编译即可,此时程序中即可使用中文了。(注:程序中添加了一个ListWidget做测试)
#include "mainwindow.h"
#include "ui_mainwindow.h"
//#pragma execution_character_set("utf-8")
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QListWidgetItem * item=new QListWidgetItem("床前明月光");
QListWidgetItem * item2=new QListWidgetItem("疑似地上霜");
QListWidgetItem * item3=new QListWidgetItem("举头望明月");
QListWidgetItem * item4=new QListWidgetItem("低头思故乡");
ui->listWidget->addItem(item);
ui->listWidget->addItem(item2);
ui->listWidget->addItem(item3);
ui->listWidget->addItem(item4);
}
MainWindow::~MainWindow()
{
delete ui;
}
3,执行效果: