form1.h
#ifndef FORM1_H
#define FORM1_H
#include <QtGui/QGridLayout>
#include <QtGui/QLineEdit>
#include <QtGui/QListWidget>
#include <QtGui/QMainWindow>
#include <QtGui/QPushButton>
class Form1: public QMainWindow
{
Q_OBJECT
public:
Form1();
public slots:
void TMessage();
public:
QWidget *centralWidget;
QGridLayout *gridLayout;
QPushButton *pushButton_Quit;
};
#endif // FORM1_H
form1.cpp
#include <QMessageBox>
#include <QString>
#include "form1.h"
#include "form2.h"
Form1::Form1()
{
this->resize(QSize(194, 323).expandedTo(this->minimumSizeHint()));
centralWidget = new QWidget(this);
gridLayout = new QGridLayout(centralWidget);
gridLayout->setSpacing(6);
gridLayout->setMargin(8);
pushButton_Quit = new QPushButton(tr("Quit"), centralWidget);
gridLayout->addWidget(pushButton_Quit, 2, 1, 1, 1);
this->setCentralWidget(centralWidget);
QObject::connect(pushButton_Quit, SIGNAL(clicked()), this, SLOT(TMessage()));
setWindowTitle(tr("Test Program"));
}
void Form1::TMessage()
{
//Form2 *form2=new Form2();
form2->show();
}
form2.h
#ifndef FORM2_H
#define FORM2_H
#include <QtGui/QGridLayout>
#include <QtGui/QLineEdit>
#include <QtGui/QListWidget>
#include <QtGui/QMainWindow>
#include <QtGui/QPushButton>
class Form2: public QWidget
{
public:
Form2();
~Form2();
};
extern Form2 *form2;
#endif // FORM2_H
form2.cpp
#include "form2.h"
Form2 *form2;
Form2::Form2()
{
}
Form2::~Form2()
{
delete this;
}
main.cpp
#include <QApplication>
#include <QtGui/QtGui>
#include "form1.h"
#include "form2.h"
int main(int argc, char **argv)
{
QApplication app(argc, argv);
Form1 form1;
form2=new Form2();
form1.show();
return app.exec();
}