3、Qt5 主窗口点击按钮 弹出另一个自定义窗口

时间:2024-03-27 18:51:40

一、目的
实现点击主窗口按钮,弹出一个指定的自定义窗口。

二、效果图
3、Qt5 主窗口点击按钮 弹出另一个自定义窗口
三、源代码
1、widget.cpp 主窗口程序

#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include "new_windows.h"
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    //绑定按钮
    connect(ui->Open_butt,SIGNAL(clicked(bool)),this,SLOT(on_Open_butt()));
}
Widget::~Widget()
{
    delete ui;
}


void Widget::on_Open_butt()
{
  qDebug()<<"ok"<<endl;

  new_win = new new_windows();  //将类指针实例化
  new_win->show();

}

2、widget.h 主窗口头文件

#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include "new_windows.h"

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

public:
    explicit Widget(QWidget *parent = nullptr);
    ~Widget();

private slots:
    void on_Open_butt();

private:
    Ui::Widget *ui;
    new_windows *new_win;  //创建类(新窗口)指针
};

#endif // WIDGET_H

3、new_windows.cpp子窗口程序

#include "new_windows.h"
#include "ui_new_windows.h"

new_windows::new_windows(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::new_windows)
{
    ui->setupUi(this);
}

new_windows::~new_windows()
{
    delete ui;
}