#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtCore>
#include"dialog.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
myDialog=new Dialog();//你没有添加这句,所以导致程序直接终止
/*************************************/
QTimer *timer = new QTimer(this);
connect(timer,SIGNAL(timeout()),this,SLOT(timerUpDate()));
timer->start(1000);
/**************************************/
//关联
connect(this, SIGNAL(currentTime(QString)), myDialog, SLOT(distmp(QString)));//这里不能用my2,因为你显示的是myDialog窗口,你必须关联到此窗口,所以你头文件中的my2定义可以删掉
}
MainWindow::~MainWindow()
{
delete ui;
}
//时间
void MainWindow::timerUpDate()
{
QDateTime time = QDateTime::currentDateTime();
QString str = time.toString("yyyy-MM-dd hh:mm:ss dddd");
ui->label->setText(str);
emit currentTime(ui->label->text());//只有这里发送信号才能保证子窗口的时间更新
}
void MainWindow::on_pushButton_clicked()
{
myDialog->show();//显示窗口,没啥说的
}
以上是对mainwindow.cpp的修改,你看看