Как реализовать динамический перевод приложения PyQt при использовании QUILoaderPython

Программы на Python
Ответить
Anonymous
 Как реализовать динамический перевод приложения PyQt при использовании QUILoader

Сообщение Anonymous »

Мне хотелось бы узнать, как лучше всего динамически переводить виджет в PyQt. Мне известен метод retranslateUi(), но он недоступен при прямой загрузке файла .ui (созданного в QtDesigner).

Код: Выделить всё

self.ui = self.loader.loadUi('HMI/ui/QtDesignerFiles/main_window.ui', self)< /code>
вы не можете тогда сделать < /p>
self.ui.retranslateUi(self)
Traceback (most recent call last):
File "", line 1, in 
AttributeError: 'MainWindow' object has no attribute 'retranslateUi'
Я создал файл .qm и успешно установил его, чтобы получить перевод текста

Код: Выделить всё

self.ui.tr("File")
'Fichier'
< /code>
Из моих исследований и чтения это кажется единственным способом, которым я могу лучше всего перевести виджеты прямо сейчас, - это пройти через каждый из них и перевести его
self.ui.file_menu.setTitle(QCoreApplication.translate("MainWindow", "File"))
Я что-то упустил или исчерпал все возможные способы без использования pyuic и получения файлов .py из файлов .ui, чтобы затем использовать retranslateUi()?

Подробнее здесь: https://stackoverflow.com/questions/793 ... -quiloader
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»