QT开发中文网

QT 点击按钮 新建一个弹窗,弹窗中有按钮,点击该按钮会跳转到另一个界面

为了实现在弹窗中添加一个按钮并跳转到另一个界面,你可以按照以下步骤进行:

  1. 创建两个QWidget或QMainWindow类来表示两个不同的界面。假设第一个界面是MainWindow,第二个界面是SecondWindow。

  2. 在MainWindow中创建一个QPushButton对象,并将其与clicked信号连接起来。当用户单击该按钮时,执行的lambda函数会创建一个QMessageBox并显示出来。此时需要在QMessageBox中添加一个新的QPushButton对象。

  3. 将新添加的QPushButton对象与另一个lambda函数连接起来,以便在用户单击该按钮时切换到另一个界面。你可以使用QWidget::hide()方法隐藏当前界面,并使用QWidget::show()方法显示另一个界面。

以下是示例代码:

#include <QApplication>
#include <QMessageBox>
#include <QPushButton>
#include "mainwindow.h"
#include "secondwindow.h"

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    // 创建第一个界面
    MainWindow mainWindow;

    // 创建第二个界面
    SecondWindow secondWindow;

    // 创建按钮,并将其与clicked信号连接起来
    QPushButton button("点击我", &mainWindow);
    QObject::connect(&button, &QPushButton::clicked, [&]() {
        QMessageBox msgBox;
        msgBox.setText("Hello World!");

        // 添加新的按钮,并将其与另一个lambda函数连接起来
        QPushButton* newButton = msgBox.addButton("跳转到下一页", QMessageBox::ActionRole);
        QObject::connect(newButton, &QPushButton::clicked, [&]() {
            mainWindow.hide();
            secondWindow.show();
        });

        msgBox.exec();
    });

    button.show();

    return app.exec();
}

在上面的示例代码中,我们首先创建了两个界面:MainWindow和SecondWindow。然后,我们在MainWindow中创建了一个QPushButton对象,并将其与clicked信号连接起来。当用户单击该按钮时,执行的lambda函数会创建一个QMessageBox并显示出来。接着,在QMessageBox中添加了一个新的QPushButton对象,并将其与另一个lambda函数连接起来。此lambda函数使用QWidget::hide()方法隐藏当前界面(即MainWindow),并使用QWidget::show()方法显示另一个界面(即SecondWindow)。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:http://qt.0voice.com/?id=1951

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?