0%

Qt 显示语言切换

核心操作就是通过 QTranslator 加载对应的国际化文件
调用 installTranslator 改变当前显示语言

#ifndef QT_NO_TRANSLATION
        static bool installTranslator(QTranslator * messageFile);
        static bool removeTranslator(QTranslator * messageFile);
#endif

系统有个系统事件

void MyWidget::changeEvent(QEvent *event)
{
    if (event->type() == QEvent::LanguageChange) {
        titleLabel->setText(tr("Document Title"));
    ...
    } else
        QWidget::changeEvent(event);
}

可以处理显示语言变化的消息

Qt提供的翻译在 Qt安装目录下 /translations 文件夹内 ,直接加到工程资源中就行

参考