void StandardDialog::showWizardDialog() { QWizard wizard(this); wizard.setWindowTitle(tr("wizard dialog")); wizard.addPage(createPage1()); wizard.addPage(createPage2()); wizard.addPage(createPage3()); wizard.exec(); }
RaceWizard::RaceWizard(Race *_race, bool readOnly, QWidget *parent) : QDialog(parent) , page5DataModel(new Page5Model(_race, this)) , race(_race) { pagesWidget = new QStackedWidget; pagesWidget->setContentsMargins(QMargins(0, 0, 0, 0)); QWidget *page1Widget = new QWidget; Ui_RaceWizardPage1 page1; page1.setupUi(page1Widget); pagesWidget->addWidget(page1Widget); createPage2(); createPage3(); QWidget *page4Widget = new QWidget; Ui_RaceWizardPage4 page4; page4.setupUi(page4Widget); pagesWidget->addWidget(page4Widget); createPage5(); createPage6(); QWidget *buttonsPane = new QWidget; buttonsPane->setContentsMargins(QMargins(0, 0, 0, 0)); QPushButton *helpButton = new QPushButton(tr("&Help")); QPushButton *cancelButton = new QPushButton(tr("Cancel")); backButton = new QPushButton(tr("< &Back")); nextButton = new QPushButton(tr("&Next >")); QPushButton *finishButton = new QPushButton(tr("&Finish")); QHBoxLayout *layout = new QHBoxLayout; layout->addWidget(helpButton); layout->addWidget(cancelButton); layout->addWidget(backButton); layout->addWidget(nextButton); layout->addWidget(finishButton); buttonsPane->setLayout(layout); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(pagesWidget); mainLayout->addWidget(buttonsPane); setLayout(mainLayout); page5DataMapper->toFirst(); pageChanged(); connect(helpButton, SIGNAL(clicked(bool)), this, SLOT(helpClicked(bool))); connect(cancelButton, SIGNAL(clicked(bool)), this, SLOT(cancelClicked(bool))); connect(backButton, SIGNAL(clicked(bool)), this, SLOT(backClicked(bool))); connect(nextButton, SIGNAL(clicked(bool)), this, SLOT(nextClicked(bool))); connect(finishButton, SIGNAL(clicked(bool)), this, SLOT(finishClicked(bool))); pagesWidget->setEnabled(!readOnly); }
// 向导对话框 void MyWidget::on_pushButton_8_clicked() { QWizard wizard(this); wizard.setWindowTitle(tr("向导对话框")); // 添加向导页面 wizard.addPage(createPage1()); wizard.addPage(createPage2()); wizard.addPage(createPage3()); wizard.exec(); }