Я использую PyQt и пытаюсь продвинуть виджет в QtDesigner. Я могу заставить его работать, если я укажу полный путь к модулю в поле «Заголовочный файл» к файлу, который содержит подкласс моего виджета.
Есть ли лучший способ продвинуть виджет в QtDesigner до виджет PyQt без указания полного пути к модулю?
Вот пример, который, надеюсь, проиллюстрирует то, о чем я говорю:
/PythonModuleRoot/Ui/MainUi.py
from PyQt4 import QtCore, QtGui, uic
class MainUi(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.ui = uic.loadUi(os.path.join(os.path.dirname(__file__), 'MainUi.ui'), self)
/PythonModuleRoot/Ui/CustomWidget.py
from PyQt4 import QtCore, QtGui, uic
class CustomWidget(QtGui.QWidget):
def __init__(self, parent):
QtGui.QWidget.__init__(self, parent)
/PythonModuleRoot/Ui/MainUi.ui
В MainUi. ui Я продвигаю виджет и устанавливаю в поле заголовочного файла значение: «PythonModuleRoot.Ui.CustomWidget».