- #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();
- }