Hi,

QWidget::create: Failed to create window () Why my application crash?

DialogByButton.pro
Qt Code:
  1. SOURCES += \
  2. main.cpp \
  3. mainwindow.cpp \
  4. dialog.cpp
  5.  
  6. HEADERS += \
  7. mainwindow.h \
  8. dialog.h
To copy to clipboard, switch view to plain text mode 

main.cpp
Qt Code:
  1. #include <QApplication>
  2. #include "mainwindow.h"
  3.  
  4. int main (int argc, char *argv[]) {
  5. QApplication app(argc, argv);
  6.  
  7. MainWindow window;
  8. window.show();
  9.  
  10. return app.exec();
  11. }
To copy to clipboard, switch view to plain text mode 

mainwindow.h
Qt Code:
  1. #ifndef MAINWINDOW_H
  2. #define MAINWINDOW_H
  3.  
  4. #include <QMainWindow>
  5. #include <QtGui>
  6.  
  7. class MainWindow : public QMainWindow
  8. {
  9. Q_OBJECT
  10. public:
  11. explicit MainWindow(QWidget *parent = 0);
  12.  
  13. signals:
  14. //void sendName(QString name);
  15.  
  16. private slots:
  17. //void callDialog();
  18.  
  19. private:
  20. QLineEdit *leName;
  21. };
  22.  
  23. #endif // MAINWINDOW_H
To copy to clipboard, switch view to plain text mode 

mainwindow.cpp
Qt Code:
  1. #include "mainwindow.h"
  2. //#include "dialog.h"
  3. //#include <QWidget>
  4.  
  5. MainWindow::MainWindow(QWidget *parent) :
  6. QMainWindow(parent)
  7. {
  8. // Controls
  9. //QLabel *lblName = new QLabel(tr("Enter your name:"));
  10. leName = new QLineEdit;
  11. //QPushButton *btnCallDialog = new QPushButton(tr("Call Dialog"));
  12.  
  13. // // Layout
  14. // QGridLayout *mainLayout = new QGridLayout(this);
  15. // mainLayout->addWidget(lblName, 0, 0);
  16. // mainLayout->addWidget(leName, 0, 1);
  17. // mainLayout->addWidget(btnCallDialog, 1, 0, 1, 2);
  18.  
  19. // // Set center widget
  20. // QWidget *widget = new QWidget;
  21. // widget->setLayout(mainLayout);
  22. // this->setCentralWidget(widget);
  23.  
  24. // //connect(btnCallDialog, SIGNAL(clicked()), this, SLOT(callDialog()));
  25. }
  26.  
  27. //void MainWindow::callDialog() {
  28. // QDialog *dialog = new QDialog(this);
  29. // connect(this, SIGNAL(sendName(QString)), dialog, SLOT(showName(QString)));
  30. // emit sendName(leName->text());
  31. // dialog->show();
  32. //}
To copy to clipboard, switch view to plain text mode 

Sorry, I solved this problem. I click "Clean".