c++ - 在 UI 编辑器创建的按钮标题中使用 tr( )

标签 c++ qt translation qt5.4

我知道使用 tr( ) 可以将您的文本翻译成任何语言,例如使用 QTranslator Class

现在如何通过 UI 编辑器而不是代码创建按钮标题、窗口标题等。

我是否必须通过代码设置包含标题的每个元素的文本才能使其工作,因为显然我不能只在标题字段中输入 tr( "Hello"); UI 编辑器。

例如:QPushButton.setText( tr( "Hello") );

或者可能有我不知道的技巧?

最佳答案

对于源代码中的文本项,您必须使用 tr() 将其包装起来。如果 Qt Designer 选择了 translatable 属性(默认情况下必须如此),则 Qt Designer 会自动为所有文本字符串执行此操作。

lupdate 工具支持 C++ 源文件和 Qt Designer .ui 文件,因此它们将被处理。

关于c++ - 在 UI 编辑器创建的按钮标题中使用 tr( ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28916001/

相关文章:

javascript - React i18next 和更改语言的正确方法

Python:Goslate 翻译请求返回 "503: Service Unavailable"

c# - 将 ASP.Net 网站翻译成另一种语言

c++ - 未定义类引用,常见答案未解决

c++ - 将 QGraphicsSvgItem 的中心定位在一个位置上。

c++ - 如何使 CMDIChildWnd 在 MFC 中可停靠?

qt - 没有获得 Windows 7 native 外观和感觉

c++ - GDB如何在运行时评估C++表达式

c++ - 如何计算出使用 Qt 样式表定位哪个小部件

c++ - Qt Qml错误: Unable to assign [undefined] to QString in a subclassed QAbstractItemModel for Qml TreeView