#ifndef QT_NO_TRANSLATION QString translatorFileName = QLatin1String("qt_"); translatorFileName += QLocale::system().name(); QTranslator *translator = new QTranslator(this); if (translator->load(translatorFileName, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) installTranslator(translator); else LOG_ERROR(QStringLiteral("加载中文失败")); #endif
默认使用中文包:qt_Zh_CN.qm。
开发环境会找到:C:\Qt\Qt5.0.2\5.0.2\msvc2010_opengl\translations类似目录。
运行环境中,需要进行如下操作:
1. 配置文件
在应用程序目录增加qt.conf文件,内容如下:
[Paths]
Prefix = ./
2. 复制文件
将qt_Zh_CN.qm文件复制到应用程序的translations(自己创建)目录下。
这样就会默认去查找./translations的翻译文件。
translatorFileName: 翻译文件的名字。
QLibraryInfo::location(QLibraryInfo::TranslationsPath):文件位置