700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > QT实现多窗口切换

QT实现多窗口切换

时间:2019-07-04 02:33:10

相关推荐

QT实现多窗口切换

该文章转自:/kf/03/124441.html!

Qt多窗口切换程序

1.ui文件中布局

2.主要程序

main.cpp

#include <QtGui/QApplication> #include "mainwindow.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }

主界面程序:

mainwindow.h

ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include "dialog1.h" #include "dialog2.h" namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private slots: void on_pushButton_clicked(); void on_pushButton_2_clicked(); void on_pushButton_3_clicked(); private: Ui::MainWindow *ui; Dialog1 dialog1; Dialog2 dialog2; }; #endif // MAINWINDOW_H

mainwindow.cpp

">#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_clicked() { this->hide(); dialog1.show(); dialog1.exec(); this->show(); } void MainWindow::on_pushButton_2_clicked() { this->close(); } void MainWindow::on_pushButton_3_clicked() { this->close(); dialog2.show(); dialog2.exec(); this->show(); }

dialog1.cpp

#include "dialog1.h" #include "ui_dialog1.h" Dialog1::Dialog1(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog1) { ui->setupUi(this); } Dialog1::~Dialog1() { delete ui; } void Dialog1::on_pushButton_clicked() { this->close(); }

dialog2.cpp与Dialog1相似

关键点:

this->close();

dialog2.show();

dialog2.exec();

this->show();

通过等待dialog.exec()消息,判断主界面是否回显。

运行结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。