2012-05-14 108 views
0

保存* .ui文件后,它们生成一个* .h文件,该文件定义并实现了一个使用QApplication :: translate调用的翻译方法“retranslateui()”,其中翻译的上下文等于UI类名称。QT:UIC命令行工具和-tr参数

我需要能够覆盖,并把我自己的自定义上下文名称。

如果您必须知道的原因是我们有一个非QT传统翻译表,有14种语言。我构建了一个将这些字符串转换为* .TS文件的工具。问题是,没有任何内容,它只是一个字符串的平坦列表,所以我的工具为我的整个应用程序强制一个上下文。自动生成翻译方法调用,其中上下文= UI类名称失败我的UI翻译。

我发现从* .ui文件创建这个* .h文件的UIC命令行实用程序有一个参数来定义不同的翻译方法。我可以使用它来转到我自己的翻译方法,该方法将添加到单个上下文中。我的问题是,我无法找到如何从qmake更改UIC呼叫以包含此自定义值的参数。

+0

您可以将参数添加到UIC命令行,但是它会为所有UI文件。 'QMAKE_UIC + = -params to add' –

+0

将此项添加到* .pro文件中,是否正确? – JasonGenX

+0

因为ui翻译会大混乱 –

回答

1

您可以修改QMAKE_UIC财产在你的.pro文件

QMAKE_UIC += -params to add