Qt菜单栏创建帮助说明————附带效果和详细代码

0 效果

开始:
在这里插入图片描述
中间步骤
在这里插入图片描述
结束:
在这里插入图片描述

1 实现

1.1 创建名称和位置

在ui设计界面新建需要的菜单名称
在这里插入图片描述

1.2 关联信号和槽函数

找到对象的名称
在这里插入图片描述
在这里插入图片描述
在类的构造函数中编写函数:

    connect(ui->action_A, &QAction::triggered, [=](){
            QWizard wizard(this);
            wizard.setOption(QWizard::NoBackButtonOnStartPage );//设置第一页没有上一步按钮
            wizard.setWizardStyle( QWizard::ModernStyle );//设置上一步下一步等按钮的显示格式
          //  wizard.setWindowTitle(tr("帮助对话框"));//设置框的标题
            wizard.addPage(createPage1());
            wizard.addPage(createPage2());
            wizard.addPage(createPage3());
            wizard.addPage(createPage4());
            wizard.exec();
    });

1.3 编写事件

在界面类的头文件中声明:

#include<QWizard>

private:    
    QWizardPage * createPage1();
    QWizardPage * createPage2();
    QWizardPage * createPage3();
    QWizardPage * createPage4();

编写定义:


QWizardPage * MainWindow::createPage1(){
    QWizardPage * page = new QWizardPage;
    page->setTitle(tr("帮助对话框"));
    page->setTitle(tr("首先,非常欢迎使用本软件!让我们赶快开始吧!\n点击“选择图片”按钮,来读入将要检测的图片。"));
    page->setButtonText(QWizard::NextButton,"下一步");
    page->setButtonText(QWizard::BackButton,"上一步");
    page->setButtonText(QWizard::CancelButton,"取消");
    page->setButtonText(QWizard::FinishButton,"完成");


    QLabel *picLabel = new QLabel;
    picLabel->setPixmap(QPixmap(":/image/images/guide1.jpg"));
    QHBoxLayout *firstLayout = new QHBoxLayout;
    firstLayout->addWidget(picLabel);
    page->setLayout(firstLayout);
    return page;
}

QWizardPage * MainWindow::createPage2(){
    QWizardPage * page = new QWizardPage;
    page->setTitle(tr("第二步"));
    page->setTitle(tr("然后点击“开始检测”按钮,来开始检测工作。检测完成后,会以文字结果呈现在屏幕的右端的文字框中。"));
    page->setButtonText(QWizard::NextButton,"下一步");
    page->setButtonText(QWizard::BackButton,"上一步");
    page->setButtonText(QWizard::CancelButton,"取消");
    page->setButtonText(QWizard::FinishButton,"完成");

    QLabel *picLabel = new QLabel;//设置图片
    picLabel->setPixmap(QPixmap(":/image/images/guide2.jpg"));
    QHBoxLayout *secondLayout = new QHBoxLayout;
    secondLayout->addWidget(picLabel);
    page->setLayout(secondLayout);

    return page;
}

QWizardPage * MainWindow::createPage3(){
    QWizardPage * page = new QWizardPage;
    page->setTitle(tr("第三步"));
    page->setTitle(tr("如果需要图片的检测结果,请点击“结果展示”按钮按钮。"));
    page->setButtonText(QWizard::NextButton,"下一步");
    page->setButtonText(QWizard::BackButton,"上一步");
    page->setButtonText(QWizard::CancelButton,"取消");
    page->setButtonText(QWizard::FinishButton,"完成");

    QLabel *picLabel = new QLabel;//设置图片
    picLabel->setPixmap(QPixmap(":/image/images/guide3.jpg"));
    QHBoxLayout *thirdLayout = new QHBoxLayout;
    thirdLayout->addWidget(picLabel);
    page->setLayout(thirdLayout);
    return page;
}

QWizardPage * MainWindow::createPage4(){
    QWizardPage * page = new QWizardPage;
    page->setTitle(tr("第四步"));
    page->setTitle(tr("如果你需要保存检测后的结果图片,请点击“保存结果”按钮。"));
    page->setButtonText(QWizard::NextButton,"下一步");
    page->setButtonText(QWizard::BackButton,"上一步");
    page->setButtonText(QWizard::CancelButton,"取消");
    page->setButtonText(QWizard::FinishButton,"完成");

    QLabel *picLabel = new QLabel;//设置图片
    picLabel->setPixmap(QPixmap(":/image/images/guide4.jpg"));
    QHBoxLayout *fourthLayout = new QHBoxLayout;
    fourthLayout->addWidget(picLabel);
    page->setLayout(fourthLayout);
    return page;
}
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

繁星蓝雨

如果觉得文章不错,可以请喝咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值