现在不少应用都是要求有多语言切换的,使用QT开发上位机也同样需要做多语言功能,不过QT是自带了多语言翻译功能,可以很方便的借助原生工具进行, 下面就简单来看看多语言开发的流程!
|创建页面
根据下方页面创建一个简单的页面,布局哪些就不要太在意,只有能体现出效果即可!

| 生成资源
在PRO文件中加入一段配置,增加语言文件生成脚本:
TRANSLATIONS+= cn.ts en.ts
图片如下:

文件结构:

点击更新翻译:

查看资源:

|翻译语言
根据自己项目构建选择合适的工具,下图就是根据本项目构建选择的,读者根据自己项目选择即可:

导入文件,中文语言就选中文相关配置:

导入文件,英文语言就选择英文相关配置:

分别对不同语言进行翻译, 需要对全部语言进行翻译:

点击生成语言包:

在文件结构中可以看到生成的语言包:

| 编写代码
1、绑定触发事件, 中文和英文都要绑定, 下图只体现了中文, 英文也是一样的道理:

2、编写代码:
#include"mainwindow.h"
#include"ui_mainwindow.h"
#include"QTranslator"
#include"QDebug"
MainWindow::MainWindow(QWidget*parent)
:QMainWindow(parent)
,ui(newUi::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
deleteui;
}
voidMainWindow::on_action_triggered()
{
QTranslator*translator=newQTranslator;
if(translator->load("../project/cn.qm"))
{
qApp->installTranslator(translator);
qDebug()<< "ok";
}
ui->retranslateUi(this);
}
voidMainWindow::on_action_2_triggered()
{
QTranslator*translator=newQTranslator;
if(translator->load("../project/en.qm"))
{
qApp->installTranslator(translator);
qDebug()<< "ok";
}
ui->retranslateUi(this);
}
注意: 如果语言包加载不成功,看看路径是否是正确的,再看看生成的文件是否有问题!
审核编辑:汤梓红
-
上位机
+关注
关注
27文章
994浏览量
56713 -
Qt
+关注
关注
2文章
318浏览量
40298 -
多语言
+关注
关注
0文章
7浏览量
6677 -
脚本
+关注
关注
1文章
407浏览量
29051
原文标题:QT|多语言切换
文章出处:【微信号:玩转单片机,微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
串口屏MODBUS教程9_控件显示和隐藏功能和多语言功能的使用教程
多语言综合信息服务系统研究与设计
SoC多语言协同验证平台技术研究
基于Toradex多语言image的编译与MUI切换演示
Multilingual多语言预训练语言模型的套路
蚂蚁集团开源高性能多语言序列化框架Fury解读
基于LLaMA的多语言数学推理大模型
如何在TSMaster面板和工具箱中实现多语言切换
大语言模型(LLMs)如何处理多语言输入问题

多语言开发的流程详解
评论