【发布时间】:2011-09-15 06:38:39
【问题描述】:
我的基于 qt4 的应用程序通过调用 retranslateUi() 函数来动态更改 GUI 语言。它就像一个魅力,但是当它处理程序更改文本的QLabel 时,它会尝试翻译原始文本 - 在 Qt Designer 中指定的文本,而不是由我的程序设置的文本。
我知道这是因为retranslateUi() 是在构建过程中自动生成的,所以它不可能知道我的更改,但我更愿意完全跳过这样的QLabels。有没有办法告诉 Qt 跳过 retranslateUi() 中的某些小部件?或者,也许我可以在我的程序中禁用 QLabel 的内容更改?
我知道我可以继承 QLabel 并通过覆盖 setText() 来解决这个问题,但我更喜欢使用标准 QLabel 以便能够使用 Qt Designer 对其进行操作。
【问题讨论】:
标签: c++ qt user-interface localization