1 將Qt的內置對話框(如:顏色選擇對話框)由英文翻譯爲中文ui
QTranslator default_trans; default_trans.load(QObject::tr("qt_zh_CN.qm"), QDir::currentPath()+"/translate"); QCoreApplication::installTranslator(&default_trans); QTranslator okcancel_trans;
okcancel_trans.load(QObject::tr("qplatformtheme_zh_CN.qm"),QDir::currentPath() + "/translate"); QCoreApplication::installTranslator(&okcancel_trans);
2 將項目文件的字符串由英文翻譯爲中文spa
QTranslator trans; trans.load(QObject::tr("projectfile_zh.qm"), QDir::currentPath() + "/translate"); QCoreApplication::installTranslator(&trans);
3 注意事項翻譯
(1)文件中的字符串須要由「tr」包含code
(2)ts文件更新後須要使用Linguist,從新發布qm文件orm
(3)翻譯內置對話框所需文件見上傳文件,須要使用兩個翻譯文件,第一個翻譯文件爲Qt自帶的內置對話框翻譯,可是不全,如肯定取消不能正常翻譯,須要結合第二個翻譯文件使用(在網上下載)blog
4 bat腳本文件,遍歷項目中的字符串,更新ts文件字符串
@echo off echo QTDIR = %QTDIR% if x%QTDIR%==x goto qtdir_fail set PATH=%QTDIR%/bin;%PATH% echo update translator files set CURRENT_PATH=%~dp0 lupdate -no-obsolete -recursive ../src -ts %CURRENT_PATH%/translatefile_zh.ts goto end :qtdir_fail echo error, can not find qt path goto end; :end