Qt 5.12.10 国际化

网上有资料但是不全,所以这里记录一份比较全的

 

1.创建项目

 

 

 

 

2.编辑 demo.cpp

这里写button用来做国际化示例,运行软件后是这个样子

#include "demo.h"
#include "ui_demo.h"
#include <QPushButton>

demo::demo(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::demo)
{
    ui->setupUi(this);

    // 按钮的文字需要使用 tr() 包含起来
    QPushButton *btn = new QPushButton(tr("test"), this);
    // 设置按钮大小
    btn->resize(100, 50);
}

demo::~demo()
{
    delete ui;
}

 

 

 

 

3.编辑Pro文件,添加一个配置,cn.ts 是翻译文件,cn这个文件的名字可以自定义。

TRANSLATIONS += \
    cn.ts

 

 

 

 

4.点击【工具】【外部】【Qt预言家】【更新翻译】

 

 

 

 

 

 

 

 

 5.打开Qt预言家,将ts文件放进去,找到需要翻译的地方,输入翻译后的文字

 

 

 

 

 

 

6.点击【文件】【发布】,然后会生成 qm 文件

 

7.对翻译文件做静态加载,然后运行软件就可以看见按钮的文字是中文了

编辑 main.cpp  做静态加载

#include "demo.h"

#include <QApplication>
#include <QTranslator>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QTranslator trans;
    // load 需要传递两个参数,文件名称、文件目录
    trans.load("cn.qm", QApplication::applicationDirPath());
    a.installTranslator(&trans);

    demo w;
    w.show();
    return a.exec();
}

 

8.将生成的 cn.qm 文件放到debug文件夹下,然后运行

现在显示出来的就是中文了。

 

posted @ 2021-07-14 16:51  十一的杂文录  阅读(444)  评论(1编辑  收藏  举报