问题标签 [qtranslator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
30 浏览

python-3.x - 如何翻译ui文件+几个问题

我对部分翻译有疑问。我使用 Qt Designer 创建我的 ui 图形界面。根据一本关于​​ PyQt5 的书中的一章,我过去能够在不使用 Qt Designer 的情况下翻译应用程序。

但我从未翻译过用它制作的界面。事实上,准确地说,我有部分翻译。它涉及我在应用程序代码中引入的字符串(setToolTip、setStatusTip、....),但不涉及其余部分。我可以在无忧无虑的英语和法语之间切换,要么不做任何事情(对于法语),要么强迫它:

python start_app.py en_EN

我在 Manjaro,python 3.8,pyqt5.14.2。

我的代码不好吗?我错过了什么?

  • 关于这些翻译,我还有 3 点需要澄清:是否有必要包含所有项目文件才能从所有这些翻译中受益?如您所见,我只将 qdvgrab 放入我的代码中。

  • 当我用 Qt Linguist 翻译我的文件时,我没有要翻译的 ui 文件的字符串。这是正常的吗?翻译不是自动的吗?怎么做 ?我是否必须将它们包含在我的专业文件中并重做我的翻译链(pylupdate、Qt Linguist?)

  • 目前,我的 ts、qm、pro 文件与我的程序 py 文件处于同一级别。但稍后,我打算将它们放在一个名为 locale 或 translation 的文件夹中。知道启动应用程序的文件是 start_app.py 并且它位于根包(见截图),如何导入它们?那时我的 python 文件也将位于 windows 文件夹中,因此与其他文件处于同一级别(ui、图像、翻译)。如何将这些文件导入 start_app.py 以便它可以读取它们。

这是我在 start_app.py 中介绍的代码

这是结构:

在此处输入图像描述

用最少的代码更新以重现此行为:

最小的.py 代码

以及ui文件代码

0 投票
1 回答
47 浏览

c++ - QT:QTranslate 不适用于 QObject 子类

QTranslate 与 tr 和 QObject::tr 一起工作正常,但是当我尝试创建 QObject 的子类时,它会生成正确的 ts 文件但无法读回它。

请帮助提前谢谢

0 投票
1 回答
41 浏览

c++ - 如何在 QMainWindow 中的所有 ui 上递归使用 retranslateUi()?

在我的 Qt5 应用程序中,我试图在运行时切换语言。到目前为止,我的简单功能是:

它工作正常,但仅此MainWindow而已。在里面,我有一些表单类(带有它们的 UI),我将它们加载到QStackedWidget

这些表格没有翻译。

如何翻译我的所有“嵌套”表格MainWindow

0 投票
0 回答
9 浏览

qt - 如何在使用 QTranslator 的多项目中只翻译一次重复的字符串?

全部:

通常我们在使用 Qt5 时有正常的项目结构:

dll 和 app 需要使用相同的字符串,其中 strings.h 是:

在 dll 中:

在应用程序中:

现在它适用于dll和app中的翻译,他们都使用过STR_HELLO和STR_HELLO2。

但不幸的是,我必须翻译两次STR_HELLO和STR_HELLO2!每个项目都需要翻译(en-US-app.ts 和 en-US-dll.ts)!

我怎样才能为所有项目只翻译一次???