#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);objTimer = new QTimer(this);//申请空间给objTimerconnect(objTimer, &QTimer::timeout, this, &Widget::timeout_slot);}Widget::~Widget()
{delete ui;
}void Widget::on_btn1_clicked()
{objTimer->start(1000);//每隔1s发送timeout信号
}void Widget::timeout_slot()//自定义timeout信号对应的槽函数
{QTime sysTime = QTime::currentTime();QString t = sysTime.toString("hh:mm:ss");ui->Edit->setText(t);
}
void Widget::timerEvent(QTimerEvent *event)
{if(event->timerId() == clockTimerId){//判断行编辑器中的文本与时间标签中的文本是否一致if(ui->Edit->text() == ui->Edit_2->text()){ui->label->setText("三更灯火五只鸡""正是男儿读书时""黑发不知勤学早""白首方悔读书迟");QFont font;font.setPointSize(25);QPalette palette;palette.setColor(QPalette::WindowText, Qt::red);ui->label->setFont(font); //设置字体大小ui->label->setPalette(palette);//设置字体颜色this->killTimer(clockTimerId);//将按钮设置成可用状态ui->btn2->setEnabled(true);}
}
}void Widget::on_btn2_clicked()
{clockTimerId = this->startTimer(1000);ui->btn2->setEnabled(false);//将按钮设置成不可用状态
}void Widget::on_btn3_clicked()
{objTimer->stop();ui->label->clear();ui->Edit_2->clear();ui->Edit->clear();
}