[英]retranslateUi() clears QLabel text
我的基于qt4的应用程序通过调用retranslateUi()
函数动态地更改GUI语言。 它就像一个魅力,但当它处理QLabel
时,程序会更改文本,它会尝试翻译原始文本 - 在Qt Designer中指定的文本,而不是由我的程序设置的文本。
据我所知,因为在构建过程中会自动生成retranslateUi()
所以它不可能知道我的更改,但我更愿意完全跳过这样的QLabel
。 有没有办法告诉Qt在retranslateUi()
跳过某些小部件? 或者,也许我可以在我的程序中禁用QLabel
内容更改?
我知道我可以将QLabel
子类化并通过重写setText()
解决这个问题,但我更喜欢使用标准的QLabel
来使用Qt Designer来操作它。
我记得,在Designer中你可以取消QLabel的翻译。 默认情况下是。 选择您不想翻译的标签,在属性编辑器中滚动到“文本”属性,展开它并取消选中翻译复选框。 然后你应该再次生成ui _ * .h文件。 之后,您的标签不应该是retranslateUi代码
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.