QT 多窗口显示 窗口之间的切换

来源:互联网 发布:phpmyadmin软件 编辑:程序博客网 时间:2024/05/17 22:05

需要添加一个ui文件,右键点击界面文件-----添加新文件,选择QT下的QT designer from 选项。 会有三类的界面文件格式,mainwindow、 widget 和dialog 这三类界面文件格式, 

 每一类的界面需要继承的是对应的类, 比如  mainwindow  需要继承 QMainWindow类, widget 需要继承 QWidget类, dialog需要继承Qdialog类, 然后子定义一个类,类的格式可以和主界面的类一样, 注意继承的类, 然后在布置控件的界面改变对象名和自定义的类名一样。

选择的是mainwindow 格式的。

.h文件

#ifndef MYMAINWINDOW_H
#define MYMAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class myMainWindow;
}
class myMainWindow : public QMainWindow
{
    Q_OBJECT
public:
    explicit myMainWindow(QWidget *parent = 0);
    ~myMainWindow();
private:
    Ui::myMainWindow *ui;
};

.cpp文件

#include "mymainwindow.h"
#include "ui_myMainWindow.h"      // 注意这里包含的头文件是自定义的类名。不要会找不到默认的构造函数。
myMainWindow::myMainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::myMainWindow)
{
    ui->setupUi(this);
}
myMainWindow::~myMainWindow()
{
    delete ui;
}

然后可以利用一个槽函数,将界面显示出来   这里需要全局指针,不然在栈上会出问题。

void MainWindow::on_pushButton_clicked()
{
    this->hide();    //隐藏当前界面
    f = new myMainWindow;
    f->show();      //显示界面
}


0 0
原创粉丝点击