QT中英文转换 QTranslator

QT中英文转换 QTranslator

1. 完成项目

2.更改项目文件

QT中英文转换 QTranslator_第1张图片
1.在我们的.pro文件最尾部添加代码:
.ts文件名随意写 写完后记得CTRL+S保存

TRANSLATIONS = FD30_CN_EN.ts

2.就是这里名字后面 不可以有*;
在这里插入图片描述

3.使用lupdata命令生成 .ts文件

QT中英文转换 QTranslator_第2张图片
1.在.pro问价上右击,然后选择在此弹出命令提示

QT中英文转换 QTranslator_第3张图片
2.这里的路径就是我们的项目路径 然后输入命令

lupdate FD30.pro

4.使用QT Linguist 完成翻译

1.按下键盘上的window键可以找到Linguist,点击打开
QT中英文转换 QTranslator_第4张图片
2.打开后是一下空白界面
QT中英文转换 QTranslator_第5张图片
3.选择我们的文件
QT中英文转换 QTranslator_第6张图片
4. 对原文进行翻译
QT中英文转换 QTranslator_第7张图片
5.修改完毕后 CTRL+S 然后退出 QT LInguist

5.使用lrelease命令 生成 .qm文件

QT中英文转换 QTranslator_第8张图片
在命令窗口输入 lrelease FD30.pro

6.在dialog添加按钮

QT中英文转换 QTranslator_第9张图片

添加槽函数代码

/**
 * @brief SysSetting::on_pushButton_clicked
 * 中英文切换
 */
void SysSetting::on_pushButton_clicked()
{
    QTranslator translator;
    if(ui->pushButton->text() == "ENGLISH")
    {
        ui->pushButton->setText("中 文");
        translator.load("F:/Lity/MyProject/FD30/7.24/FD30/FD30_CN_EN.qm");      //使用翻译
        qApp->installTranslator(&translator);
        ui->retranslateUi(this);
    }else
    {
        ui->pushButton->setText("ENGLISH");
        qApp->removeTranslator(&translator);                                    //取消翻译
        ui->retranslateUi(this);
    }
}

QT中英文转换 QTranslator_第10张图片

以上就实现了中英文切换。

谢谢观看~~~!

你可能感兴趣的:(c++入门,QT学习)