QT5-界面跳转

1.先创建Qwidget界面(不含ui),之后创建一个子界面subWidget(同样不含UI)

2.在QWidget中创建一个按钮,之后创建一个槽函数(实现主界面隐藏,子界面显示)

3.在subWidget中创建一个按钮,之后创建一个信号(实现子界面隐藏,主界面显示)

widget.h:

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include "subpage.h"
class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = 0);
    ~Widget();

    subPage* two;

public slots:
    void quzi();

    void shixian();
};

#endif // WIDGET_H

widget.cpp:

#include "widget.h"
#include <QPushButton>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    two = new subPage;
    QPushButton* a = new QPushButton(this);
    this->setWindowTitle("这是主界面");
    a->setText("我想去子界面");
    a->move(100,100);
    connect(a,&QPushButton::clicked,this,&Widget::quzi);

 //   connect(two,&subPage::quzhu,this,&Widget::shixian);
}

Widget::~Widget()
{

}
void Widget::quzi()
{
    this->hide();
    two->show();
}
void Widget::shixian()
{
    this->show();
    two->show();

}

man.cpp:

#include "widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();

    return a.exec();
}

subPage.h:

#ifndef SUBPAGE_H
#define SUBPAGE_H

#include <QWidget>

class subPage : public QWidget
{
    Q_OBJECT
public:
    explicit subPage(QWidget *parent = nullptr);

signals:
    void quzhu();
public slots:

};

#endif // SUBPAGE_H

subPage.cpp:

#include "subpage.h"
#include <QPushButton>
#include "widget.h"
subPage::subPage(QWidget *parent) : QWidget(parent)
{
    this->setWindowTitle("这是子界面");
    QPushButton* b = new QPushButton(this);
    b->setText("我想去主界面");
    b->move(150,100);
    connect(b,&QPushButton::clicked,this,&subPage::quzhu);

}
void subPage::quzhu()
{
    Widget* w = new Widget;
    w->show();
    this->hide();
}

以上即可实现两个界面间的跳转。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值