day5 qt

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{

    ui->setupUi(this);
    timer_id=this->startTimer(100);//啓動一個定時器 每100ms發送一次信號
    ui->Edit1->setPlaceholderText("設定鬧鐘");//設置文本佔位符
    //給播報員指針實例化空間
    speech = new QTextToSpeech(this);
    //實例化一個定時器
    timer=new QTimer(this);
    connect(timer,&QTimer::timeout,this,&Widget::on_but1_clicked);//將定時器yu槽函數鏈接
   //connect(ui->but2,&QPushButton::clicked,this,&Widget::on_but1_clicked);//按鈕二鏈接按鈕一的槽函數

}

Widget::~Widget()
{
    delete ui;
}
void Widget::on_but1_clicked()//點擊啓動 讀取定下的時間
{
  ;
    qDebug()<Edit1->text();
    //開啓定時器
    timer->start(100);
    if(ui->Edit1->text()==ui->label->text())//如果設置的時間和當前時間相同
    {
        speech->say(ui->Edit2->toPlainText());
        qDebug()<Edit2->toPlainText();
    }
}
void Widget::timerEvent(QTimerEvent *event)//時間處理函數
{
    if(event->timerId()==timer_id)
    {
        QDateTime  sys_dt=QDateTime::currentDateTime();//獲取當前系統時間
        ui->label->setText(sys_dt.toString("hh:mm:ss"));

    }
}
void Widget::on_but2_clicked()
{
    speech->stop();
    timer->stop();
}

day5 qt_第1张图片

你可能感兴趣的:(qt,命令模式,开发语言)