当前位置: 首页 > news >正文

Qt中英文支持

目的

就是想让QT编的软件支持中英文。

情况

1、首先配置项目的pro文件:

在这里插入图片描述

这样就会生成相应的翻译配置文件,当前是:
translate1_cn.ts:中文的配置文件,因为一般默认就是中文,所以一般中文的翻译文件是不需要的
translate1_en.ts:英文的配置文件

2、lupdate 生成ts文件

通过执行如下命令:
lupdate imageAnalyse.pro
生成:
translate1_cn.ts、translate1_en.ts这两个文件。
之后,更改了代码,添加了需要翻译的字符,可以直接用这一个命令进行更新
如图所示:
在这里插入图片描述

3、通过Linguist进行翻译

在这里插入图片描述
在这里插入图片描述

4、通过lrelease ts文件 生成 压缩的qm文件

在这里插入图片描述

5、代码中引用翻译文件进行翻译工作

void Translate::translate(QApplication &app)
{qDebug("enter function Translate::translate");QString lang = this->getLanguage();QString langFile;if(lang == "zh_cn"){langFile = QString(":/translate/translate1_cn.qm");}else if(lang == "en_us"){langFile = QString(":/translate/translate1_en.qm");}else{langFile = QString(":/translate/translate1_cn.qm");}bool res = m_trans->load(langFile);if(!res){QString error = langFile+" load error!";qWarning(error.toStdString().c_str());}app.installTranslator(m_trans);qDebug("exit function Translate::translate lang=%s", lang.toStdString().c_str());
}

效果

英文配置的情况:
在这里插入图片描述
在这里插入图片描述

中文配置的情况:
在这里插入图片描述
在这里插入图片描述

总结

在这里插入图片描述

中英文对应,就是中英文一一对应,并不是我一开始想的自动翻译,这就好像键值对一样,就是这么的简单。
相应代码链接:https://download.csdn.net/download/maokexu123/89658658

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Openresty 中 ngx.exit(403)的时候,给403页面的body中传递一个参数展示出来
  • 怎样快速搭建 Linux 虚拟机呢?(vagrant 篇)
  • unity3d拼图__附带资源
  • 上书房信息咨询:消费者需求研究指标设计
  • 医院挂号系统的伪代码
  • 看图学sql之sql 中的UNION 和union all
  • html 基础标签
  • 深入解析Smarty SSTI 利用
  • 艾体宝干货丨OIDA之一:掌握数据包分析-学会观察
  • 橙子投屏,轻松连接大屏幕
  • 数学建模2024国赛时间及事项安排
  • 基础概念与简单数据结构的笔记02
  • Linux shell编程学习笔记74:sed命令——沧海横流任我行(中)
  • 滚珠丝杆与支撑座的标准安装与调试方法!
  • 命令执行漏洞-rce
  • 自己简单写的 事件订阅机制
  • [case10]使用RSQL实现端到端的动态查询
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 【347天】每日项目总结系列085(2018.01.18)
  • 【刷算法】求1+2+3+...+n
  • C++入门教程(10):for 语句
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • js作用域和this的理解
  • Laravel 中的一个后期静态绑定
  • MaxCompute访问TableStore(OTS) 数据
  • Vue 重置组件到初始状态
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 搞机器学习要哪些技能
  • 网络应用优化——时延与带宽
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • 阿里云ACE认证学习知识点梳理
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • $.ajax中的eval及dataType
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (十三)Flink SQL
  • (源码版)2024美国大学生数学建模E题财产保险的可持续模型详解思路+具体代码季节性时序预测SARIMA天气预测建模
  • (转)大型网站架构演变和知识体系
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .equals()到底是什么意思?
  • .NET 动态调用WebService + WSE + UsernameToken
  • .NET 设计模式—简单工厂(Simple Factory Pattern)
  • .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试
  • .NET技术成长路线架构图
  • .Net转Java自学之路—基础巩固篇十三(集合)
  • .pyc文件是什么?
  • @JsonFormat 和 @DateTimeFormat 的区别
  • [100天算法】-每个元音包含偶数次的最长子字符串(day 53)
  • [android] 切换界面的通用处理
  • [AWS]CodeCommit的创建与使用
  • [Bzoj4722]由乃(线段树好题)(倍增处理模数小快速幂)
  • [C#]DataTable常用操作总结【转】