QT工程国际化

以前用Qt4的库写程序,遇到中文显示问题都是用QtPlugin中的Codec解决,详见《QT数据库驱动和多国语言驱动部署注意事项》。后来升级到Qt5以后plugins目录下不再有Codec文件夹,原来的方法就失效了,只能用添加翻译资源文件的标准“国际化”方法,这一改动估计是Qt变得更加规范的体现。

本文记录使用资源文件进行多语言支持的方法。

1. 在需要被翻译的字符串前面加标识tr,如QString str = tr(“hello,world!”); 因为翻译工具会把源码中tr标识的字符串提取出来,翻译成其他语言,如果没有用tr标识的,不会被工具提取。在QtDesigner的界面中输入文字时,默认已经是加上tr的了,所以在翻译时也能看见。

2. 如下图,在安装了qt-vs-addin的Visual Studio中点击QT菜单,选择Create new Translation File,会看到在解决方案资源管理器中增加了一个后缀为ts的文件。


3. 如上图,点击Launch Linguist,打开QT语言编辑器,可以看到每一处用tr标识出的代码,逐一为它们添加翻译文本


4. 如果源码有修改,例如新加了tr,则需要更新ts文件,在ts文件上右键点击lupdate即可。


5. 当所有项全部翻译完成后,点击lrelease,将ts文件发布为后缀为qm的二进制文件。

6. 在程序入口处添加加载翻译器的代码。


5. 发布时将qm文件和可执行程序放在同一目录下即可。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

皓月如我

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

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

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

打赏作者

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

抵扣说明:

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

余额充值