将自定义框架设置为QWIzardPage

时间:2016-10-23 18:34:58

标签: python python-3.x pyqt5

我目前正在使用PyQt5和Python 3.5。

我想使用自定义QWizard生成QWizardPage。我有一个自定义框架,如:

class Frame(QtWidgets.QFrame):

    def __init__(self, parent=None):
        super(Frame, self).__init__(parent)

        self.setObjectName(self.__class__.__name__)

        self.layout = QtWidgets.QVBoxLayout(self)

        text = QtWidgets.QLabel("Some text here ... ")

        self.layout.setContentsMargins(10, 10, 10, 10)
        self.layout.setSpacing(10)

        self.layout.addWidget(text)

是否可以为自定义小部件设置QWizard函数,如addPage()?我不需要我的自定义框架继承QWizardPage

1 个答案:

答案 0 :(得分:0)

我找到的最佳解决方案是覆盖QWizardPage并将我的自定义框架添加为小部件。

class Page(QtWidgets.QWizardPage):

    def __init__(self, parent=None):
        super(Page, self).__init__(parent)

        self.setObjectName(self.__class__.__name__)

        self.layout = QtWidgets.QVBoxLayout(self)

        frame = Frame() # My custom frame

        self.layout.addWidget(frame)