Измените путь импорта модуля rcc из Qt Designer

Я ищу способ изменить путь импорта модуля rcc в сгенерированном pyuic файле python.

Пример pyuic сгенерировал код Python из файла пользовательского интерфейса:

          from PyQt5 import QtCore, QtGui, QtWidgets
    
    class Ui_MainWindow(object):
        def setupUi(self, MainWindow):
            MainWindow.setObjectName("MainWindow")
            MainWindow.resize(249, 103)
            self.centralwidget = QtWidgets.QWidget(MainWindow)
            self.centralwidget.setObjectName("centralwidget")
            self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
            self.horizontalLayout.setObjectName("horizontalLayout")
            self.pushButton = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton.setText("")
            icon = QtGui.QIcon()
            icon.addPixmap(QtGui.QPixmap(":/gui_icons/res/play.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
            self.pushButton.setIcon(icon)
            self.pushButton.setIconSize(QtCore.QSize(32, 32))
            self.pushButton.setObjectName("pushButton")
            self.horizontalLayout.addWidget(self.pushButton)
            MainWindow.setCentralWidget(self.centralwidget)
    
            self.retranslateUi(MainWindow)
            QtCore.QMetaObject.connectSlotsByName(MainWindow)
    
        def retranslateUi(self, MainWindow):
            _translate = QtCore.QCoreApplication.translate
            MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
    import icons_mw_rc

я хочу изменить icons_mw_rcпуть импорта в другое место, чтобы лучше упорядочить мои исходные файлы [Пример: import qrc_res.icons_mw_rc]. Есть ли способ сделать это с помощью Qt Designer без ручного изменения сгенерированного pyuic файла src.

1 ответ

Инструмент pyuic имеет несколько параметров для настройки оператора импорта ресурсов. Вы можете добиться эквивалента вашего примера, используя --import-fromвариант:

      pyuic5 --import-from=qrc_res -o mw.py mw.ui

который добавит следующую строку в сгенерированный модуль Python:

      from qrc_res import icons_mw_rc
Другие вопросы по тегам