QT实现点击按钮切换窗口

相关标签:
//firstwidget.h
#ifndef FIRSTWIDGET_H
#define FIRSTWIDGET_H
#include
#include
#include
class FirstWidget : public QWidget
{
Q_OBJECT
public:
FirstWidget(QWidget *parent = nullptr);
~FirstWidget();
void myhide();
void hide_2();
private:
QPushButton b1;
secondwidget w2;
};
#endif // FIRSTWIDGET_H
//firstwidget.cpp
#include "firstwidget.h"
#include "secondwidget.h"
FirstWidget::FirstWidget(QWidget *parent)
: QWidget(parent)
{
b1.setParent(this);
b1.setText("切换到窗口2");
w2.setWindowTitle("窗口2");
connect(&b1,&QPushButton::released,this,&FirstWidget::myhide);
connect(&w2,&secondwidget::mySignal,this,&FirstWidget::hide_2);
}
void FirstWidget::myhide()
{
this->hide();
w2.show();
}
void FirstWidget::hide_2()
{
this->show();
w2.hide();
}
FirstWidget::~FirstWidget()
{
}
//secondwidget.h
#ifndef SECONDWIDGET_H
#define SECONDWIDGET_H
#include
#include
class secondwidget : public QWidget
{
Q_OBJECT
public:
explicit secondwidget(QWidget *parent = nullptr);
void sendSolt();
signals:
void mySignal();
private:
QPushButton b2;
};
#endif // SECONDWIDGET_H
//seconndwidget.cpp
#include "secondwidget.h"
secondwidget::secondwidget(QWidget *parent) : QWidget(parent)
{
b2.setParent(this);
b2.setText("切换到窗口1");
connect(&b2,&QPushButton::clicked,this,&secondwidget::sendSolt);
}
void secondwidget::sendSolt()
{
emit mySignal();
}
文章来源: https://blog.51cto.com/u_15515702/5783772
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报