我使用基于Qt 4.7.0(32位)的 Qt Creator 2.0.1.我是Qt的新手. 我创建了一个主窗口.当我按下主窗口中的按钮时,如何进入另一个窗口? 我能做得很好.我只是为需要这个的人提供代码.我有一个名
我创建了一个主窗口.当我按下主窗口中的按钮时,如何进入另一个窗口?
我能做得很好.我只是为需要这个的人提供代码.我有一个名为MainWindow和NewWindow的窗口.我在Mainwindow有一个名为mMyButton的按钮. mainwindow.h如下.#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> //added #include"newwindow.h" namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); //added public slots: void openNewWindow(); //added name of the new window is NewWindow private: NewWindow *mMyNewWindow; private: Ui::MainWindow *ui; private slots: void on_mMyButton_clicked(); }; #endif // MAINWINDOW_H
我的newwindow.h如下.
#ifndef NEWWINDOW_H #define NEWWINDOW_H #include <QMainWindow> namespace Ui { class NewWindow; } class NewWindow : public QMainWindow { Q_OBJECT public: explicit NewWindow(QWidget *parent = 0); ~NewWindow(); private: Ui::NewWindow *ui; }; #endif // NEWWINDOW_H
我的mainwindow.cpp如下.
#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); //Added connect(ui->mMyButton, SIGNAL(click()), this, SLOT(openNewWindow())); } MainWindow::~MainWindow() { delete ui; } void MainWindow::openNewWindow() { mMyNewWindow = new NewWindow(); mMyNewWindow->show(); } void MainWindow::on_mMyButton_clicked() { openNewWindow(); }
我的newwindow.cpp,
#include "newwindow.h" #include "ui_newwindow.h" NewWindow::NewWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::NewWindow) { ui->setupUi(this); } NewWindow::~NewWindow() { delete ui; }
我的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(); }
感谢您所提供的所有信息.并享受Qt的编程.