gpt4 book ai didi

c++ - retranslateUi() 清除 QLabel 文本

转载 作者:太空狗 更新时间:2023-10-29 20:30:18 25 4
gpt4 key购买 nike

我的基于 qt4 的应用程序通过调用 retranslateUi() 函数动态更改 GUI 语言。它就像一个魅力,但当它处理程序更改文本的 QLabel 时,它会尝试翻译原始文本 - 在 Qt Designer 中指定的文本,而不是我的程序设置的文本。

我知道这是因为 retranslateUi() 是在构建过程中自动生成的,所以它不可能知道我的更改,但我宁愿跳过这样的 QLabel完全。有没有办法告诉 Qt 在 retranslateUi() 中跳过某些小部件?或者,也许我可以在我的程序中禁用 QLabel 的内容更改?

我知道我可以子类化 QLabel 并通过重写 setText() 解决这个问题,但我更喜欢使用标准的 QLabel 来能够使用 Qt Designer 对其进行操作。

最佳答案

我记得,在 Designer 中,如果 QLabel 被翻译,您可以取消选中它。默认情况下是。选择您不想翻译的标签,在属性编辑器中滚动到“文本”属性,展开它并取消选中翻译复选框。然后你应该再次生成 ui_*.h 文件。之后你的标签不应该在 retranslateUi 代码中

关于c++ - retranslateUi() 清除 QLabel 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7426803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com