Qt国际化之语言切换

在这里插入图片描述

来源:微信公众号「编程学习基地」

基于qt语言家的语言切换

Assistant(Qt语言家),类似于MSDN最权威的速应用程序翻译和国际化的工具。Qt 使用单一的源码树
和单一的应用程序二进制包就可同时支持多个语言和书写系统,有助于软件走向国际化,普度众生。

具体步骤:

  1. 生成.ts文件,lupdate
  2. 翻译成制定语言,生成.qm文件,lrelease。
  3. 加载qm文件,load()
  4. install
效果呈现

中文:

在这里插入图片描述

英文:

在这里插入图片描述

step1:pro文件添加对翻译的支持
TRANSLATIONS = Translate_EN.ts \
Translate_CN.ts
step2:生成.ts文件

在这里插入图片描述

step3:使用qt语言家翻译ts文件

Translate_CN.ts
汉语­>汉语(一般不用改,我们使用的是汉语,只需要改汉译英的)
在这里插入图片描述
在这里插入图片描述

Translate_EN.ts

汉语­>英语

在这里插入图片描述

step4:生成.qm

在这里插入图片描述

step5:加载qm文件
定义QTranslator对象
QTranslator *m_Translator;

分配对象

m_Translator = new QTranslator(this);
切换英文
m_Translator‐>load("Translate_EN.qm");

切换中文

m_Translator->load("Translate_CN.qm");
step6:安装qm文件
qApp‐>installTranslator(m_Translator);
问题:日历还没有修改
ui‐>calendarWidget‐>setLocale(QLocale::Chinese);	//设置英文
ui‐>calendarWidget‐>setLocale(QLocale::C);			//设置中文

注意事项:

如果加载不成功,说明路径错了,QtCreator生成的.qm和.ts文件是在.pro目录下,需要移至debug目录下,才能正确读取.qm和.ts文件,实现语言的切换

源代码以及示例程序github地址:

https://github.com/ADeRoy/Qt-controls/tree/master/language

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DeRoy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值