qt界面汉化问题

1.找到ts文件:

在安装路径下找到qt_zh_cn.ts文件;
这个文件一般是在安装Qt的translations下,例如我的文件在:

Qt5.12.8\5.12.8\msvc2017_64\translations

2.修改ts文件:

这个文件里有些文字是没有的,我主要加了:

<context>
    <name>QPlatformTheme</name>
    <message>
        <location filename="../src/widgets/qdialogbuttonbox.cpp" line="+42"/>
        <location line="+18"/>
        <source>OK</source>
        <translation>确定</translation>
    </message>
    <message>
        <location line="+54"/>
        <source>Cancel</source>
        <translation>取消</translation>
    </message>
</context>

和:

 <message>
    <source>&amp;Pick Screen Color</source>
    <translation>拾取屏幕颜色</translation>
</message>

3.将ts文件编译为qm文件:

然进入安装Qt的目录,使用 lrelease.exe工具编译成qm文件:
例如:

D:\Qt5.12.8\5.12.8\msvc2017_64\bin> lrelease.exe -verbose D:\Work\Demo\colortest\qt_zh_CN.ts D:\Work\Demo\colortest\qt_zh_CN.qm

4.加载qm

再将qm文件放入资源目录下,在main文件里加载即可:

QTranslator translator;
translator.load(QString(":/Languages/qm/qt_zh_CN.qm"));
bool ok = qApp->installTranslator(&SysTranslator);

如果ok为false,请检查load里面的路径,我这里是把这个文件放到qrc里了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容