1、首先设置qt的环境变量,其中路径为qt的编译路径,如:qtdir=D:\QT\2010.05\qt,如下图所示:
2、然后再代码中安装语言,如:
#include "builtin.h"
#include <QtGui/QApplication>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
QTranslator translator;
{
QStringList environment=QProcess::systemEnvironment();//获得系统的环境变量
QString str;
bool bFinded=false;
foreach(str,environment)//遍历环境变量,并将每个环境变量赋值给str
{
//qtdir=D:\QT\2010.05\qt
if (str.startsWith("qtdir="))//查找开头为qtdir=的环境变量,那么此时就是所要找的路径
{
qDebug()<<str;
bFinded=true;
break;
}
}
if (bFinded)
{
str=str.mid(6);//从=号后边的截取,所以str就成为:D:\QT\2010.05\qt
bFinded=translator.load("qt_"+QLocale::system().name(),str.append("\\translations\\"));
//QLocale::system().name()就是获得以:语言_国家的形式返回一个字符串,也就是从D:\QT\2010.05\qt\translations\路径下加载qt_zh_CN.qm文件
if (bFinded)
{
qApp->installTranslator(&translator);//如果加载成功,则安装翻译器,将之后所有项目的内建语言更改为设定的语言
}
else
{
qDebug()<<QObject::tr("没有支持中文的Qt国际化翻译文件!");
}
}
else
{
qDebug()<<QObject::tr("必须设置QTDIR环境变量!");
exit(1);
}
}
CBuiltinDlg w;
w.show();
return a.exec();
}
3、运行效果为: