#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
speech = new QTextToSpeech(this); //实例化播报员
//开始先关闭按钮2
ui->btn2->setDisabled(true);
//给定时器指针实例化空间
timer = new QTimer(this);
connect(timer,&QTimer::timeout,this,&Widget::on_timeout_slot);
timer->start(1000); //当启动定时器后,会每隔1000ms,自动发射timeout信号
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_btn1_clicked()
{
//执行启动功能
//把文本框设置为不可以修改
ui->alarmtext->setDisabled(true);
ui->alarmtime->setDisabled(true);
//将按钮1设置为不可用
ui->btn1->setDisabled(true);
//将按钮2设置为可用
ui->btn2->setEnabled(true);
}
void Widget::on_btn2_clicked()
{
//执行关闭功能
//把文本框设置为可以修改
ui->alarmtext->setEnabled(true);
ui->alarmtime->setEnabled(true);
//将按钮2设置为不可用
ui->btn2->setDisabled(true);
//将按钮1设置为可用
ui->btn1->setEnabled(true);
}
//处理timeout信号对应的槽函数
void Widget::on_timeout_slot()
{
QTime t = QTime::currentTime(); //获取系统时间
t1 = t.toString("hh:mm:ss"); //将系统时间转换为字符串
ui->localtimeLab->setText(t1); //将时间设置到ui上
//判断闹钟时间是否与本地时间相等
if(t1 == ui->alarmtime->text())
{
speech->say(ui->alarmtext->toPlainText()); //播放文本上的内容
}
}
qt-作业
最新推荐文章于 2025-05-29 18:09:28 发布