需要添加一个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(); //显示界面
}