关于Qt中的翻译问题

最近做Qt的翻译发现有几个老是翻译不过去,我把我遇到的问题以及解决方案给大家列出来一下,共同分享

1.QMessageBox::warning(this, QObject::tr("警告"), QObject::tr("错误信息"), QObject::tr("警告"));

将其改为QMessageBox::warning(this, QObject::tr("警告"), QObject::tr("错误信息"))之后就没问题了。

2.QLabel的一个对象,setText(QObject::tr("单位(m)")),将其改为QString str = QObject::tr("单位(m)"); setText(str);就没问题了,这是因为在翻译的时候不能使用这种常量,这种常量直接在编译后被连接为常量而导致无法翻译,所以大家如果想能翻译的话,直接使用普通的堆栈变量吧。

3.在Qt的翻译中不要使用QObject::tr(""),这种手法会导致别的翻译过不去,对于空字符串要使用""即可。

4.在函数中static const QString str = QObject::tr("中文");也会导致翻译不过的,将static 去掉可以。


翻译里面各种问题,在这里先给大家列出来我碰到的,如果大家有知道的可以告诉我,一起分享出来解决大家的难题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值