当前位置: 首页 > 办公技巧 > 正文

办公技巧窗口切换(Qt界面切换)

  • 叁碗诸角 叁碗诸角
  • 办公技巧
  • 2023-07-04 10:08:50
  • 0

创建新界面类的方法:

右击工程-->add new-->

-->选择相应的窗体

信号槽函数法


oneform.h

#ifndef ONEFORM_H#define ONEFORM_H#include #include "twoform.h" //要创建第二界面,所以需要第二界面的头文件QT_BEGIN_NAMESPACEnamespace Ui { class oneform; }QT_END_NAMESPACEclass oneform : public QWidget{ Q_OBJECTpublic: oneform(QWidget *parent = nullptr); ~oneform();public slots: void one_two(void); //第一界面进入第二界面的槽函数 void oneshow(void); //显示界面1,隐藏界面2private: Ui::oneform *ui; twoform* win; //创建第二界面};#endif // ONEFORM_H

oneform.cpp

#include "oneform.h"#include "ui_oneform.h"oneform::oneform(QWidget *parent) : QWidget(parent) , ui(new Ui::oneform){ ui->setupUi(this); connect(ui->pushButton,SIGNAL(clicked(void)),this,SLOT(one_two(void))); win=new twoform; //创建界面2 connect(win,SIGNAL(oneFunc(void)),this,SLOT(oneshow(void))); //接受界面2发送的信号}oneform::~oneform(){ delete ui;}void oneform::one_two(){ win->show(); this->hide();}void oneform::oneshow(){ this->show();}

QT开发交流 赀料君羊:714620761


twoform.h

#ifndef TWOFORM_H#define TWOFORM_H#include namespace Ui {class twoform;}class twoform : public QWidget{ Q_OBJECTpublic: explicit twoform(QWidget *parent = nullptr); ~twoform();private: Ui::twoform *ui;public slots: void two_one(void); //第二界面进入第一界面的槽函数signals: void oneFunc(void);};#endif // TWOFORM_H

twoform.cpp

#include "twoform.h"#include "ui_twoform.h"twoform::twoform(QWidget *parent) : QWidget(parent), ui(new Ui::twoform){ ui->setupUi(this); connect(ui->pushButton,SIGNAL(clicked(void)),this,SLOT(two_one(void)));}twoform::~twoform(){ delete ui;}void twoform::two_one(){ emit oneFunc(); //发射信号,通知界面1显示---界面1需要接受这个信号 this->hide();}

最新文章