QT中英文切换

1.生成ts文件

工程文件.pro增加

TRANSLATIONS = english.ts  chinese.ts

image.png

在目录下生成english.ts和chinese.ts两个文件。

注:使用x86工具链编译,如

image.png

/opt/Qt5.5.0/5.5/gcc/bin/lupdate /root/hh_wksp/EVE/EBS1500/00LiAble_fix/LiAble_A_B/LiAbleA.pro

2.修改chinese.ts文件

2.1添加语言翻译工具

image.png

2.2打开语言翻译工具

image.png

2.3修改翻译文件

image.png

image.png

image.png

image.png

生成english.qm和chinese.qm文件。

3.程序修改

#include <QTranslator>

void MainWindow::on_pushButton_clicked()
{
    if(langeState)
    {
        langeState = false;
    }
    else
    {
        langeState = true;
    }

    QString qmFilename;
    static QTranslator* translator;
    if (translator != NULL)
    {
        qApp->removeTranslator(translator);
        delete translator;
        translator = NULL;
    }

    translator = new QTranslator;

    QString runPath = QCoreApplication::applicationDirPath();       //获取文件运行路径

    if(langeState)
    {
        qmFilename = runPath + "/chinese.qm";
    }
    else
    {
        qmFilename = runPath + "/english.qm";
    }

    if (translator->load(qmFilename))
    {
        qApp->installTranslator(translator);
    }

    ui->retranslateUi(this);             // 重新设置界面显示
}

4.执行

将执行程序、english.qm和chinese.qm文件放在同一个目录下。

上一篇:
下一篇: