关于Qt弹出的窗口闪退的问题

(:з」∠)本人新手,前两天刚刚接触了Qt,今天想试试能不能做出弹出窗口,很幸运,成功弹出窗口,不过不知道为啥窗口刚刚出现就消失了,,,有没有大神可以帮下忙呢~~~谢谢啦,第一次发帖。。。。
dialog.h文件:

 #ifndef DIALOG_H
#define DIALOG_H

#include <QDialog>
#include<QLabel>

namespace Ui {
class Dialog;
}

class Dialog : public QDialog
{
    Q_OBJECT

public:
    explicit Dialog(QWidget *parent = 0);
    ~Dialog();

private:
    Ui::Dialog *ui;
    QLabel *label;
};

#endif // DIALOG_H

mainwindow.h文件:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
private slots:
    void push();
};

#endif // MAINWINDOW_H

main.cpp文件:

#include "mainwindow.h"
#include <QApplication>
#include "dialog.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec();
}

dialog.cpp文件:

#include "dialog.h"
#include "ui_dialog.h"
#include<QGridLayout>
#include<windows.h>
Dialog::Dialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Dialog)
{
    ui->setupUi(this);
    label = new QLabel("label1");
    QGridLayout *layout = new QGridLayout(this);
//    Sleep(5000);
    label->show();
//    Sleep(5000);
}

Dialog::~Dialog()
{
//    Sleep(5000);
    delete ui;
}

mainwindow.cpp文件

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include"dialog.h"
#include<QPushButton>
#include<windows.h>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    connect(ui->button1,SIGNAL(clicked()),this,SLOT(push()));
}

MainWindow::~MainWindow()
{
    delete ui;
}
int times=1;
void MainWindow::push(){
    for(long int i=0;i<times;i++)
    {
        QString temStr = ui->line->text();
        times = temStr.toInt();
        Dialog one;
        one.show();
    }
    times = 1;
}

自己做了两个UI文件,觉得和问题没有太大的关联。

因为你的dialog是申请的栈空间,函数运行结束后内存释放,界面自然消失。

申请堆空间可以解决