Trivial Wizard Example#

The Trivial Wizard example illustrates how to create a linear three-page registration wizard using three instances of QWizardPage and one instance of QWizard .

../_images/trivialwizard-example-flow.png

Introduction Page#

../_images/trivialwizard-example-introduction.png

The introduction page is created with the createIntroPage() function where a QWizardPage is created and its title is set to “Introduction”. A QLabel is used to hold the description of page. A QVBoxLayout is used to hold the label. This page is returned when the createIntroPage() function is called.

createIntroPage = QWizardPage()

    page = QWizardPage()
    page.setTitle("Introduction")
    label = QLabel("This wizard will help you register your copy "()
                               "of Super Product Two.")
    label.setWordWrap(True)
    layout = QVBoxLayout()
    layout.addWidget(label)
    page.setLayout(layout)
    return page

Registration Page#

../_images/trivialwizard-example-registration.png

The registration page is created with the createRegistrationPage() function. QLineEdit objects are used to allow the user to input a name and an e-mail address. A QGridLayout is used to hold the QLabel and QLineEdit objects.

createRegistrationPage = QWizardPage()

Conclusion Page#

../_images/trivialwizard-example-conclusion.png

The conclusion page is created in the createConclusionPage() function. This function’s content is similar to createIntroPage(). A QLabel is used to inform the user that the registration process has completed successfully.

createConclusionPage = QWizardPage()

`` main()``

Function#

The main() function instantiates a QWizard object, wizard, and adds all three QWizardPage objects to it. The wizard window title is set to “Trivial Wizard” and its show() function is invoked to display it.

if __name__ == "__main__":

Example project @ code.qt.io