处理Qiloader时的Qt翻译问题

Qt translations issue while dealing with QUiloader

本文关键字:翻译 问题 Qt 时的 Qiloader 处理      更新时间:2023-10-16

我使用QUiloader动态加载.pro项目文件中未列出的.ui文件。

到目前为止还不错。问题是lupdate只翻译它在.pro文件下看到的内容。我用以下命令运行它:

lupdate project.pro -ts tr_language.ts

因此,我丢失了.ui文件中的所有文本。

如果我按下以下命令,我设法发现lupdate可以翻译小工具.ui:

lupdate widget.ui -ts tr_language.ts

这样我就可以把.ui的东西翻译出来。

怎么了?我只能做上述方法中的一种,因为它们相互覆盖。

有没有更聪明的方法来解决这个问题?

有没有更聪明的方法来解决这个问题?

简单:不要覆盖文件。只需使用

lupdate widget.ui -ts tr_widget_language.ts

或您的ts的任何其他名称。这样就有了两个不会互相覆盖的文件。

之后你可以使用:

lrelease [options] ts-files [-qm qm-file]

它提到ts文件作为论据。有了这个,您应该能够将多个*.ts文件编译为一个*.qm文件。

否则,您将不得不在应用程序中加载第二个*.qm文件。