20230407 定时闹钟
定时闹钟
#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QDebug>
#include <QIntValidator>
#include <QTime>
#include <QMessageBox>
#include <QTextToSpeech>
#include <QTimer>
#include <QMouseEvent>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic slots:void checkTime();public:Widget(QWidget *parent = nullptr);~Widget();QTime *qTime;QTextToSpeech *speaker;QTimer *timer;QPoint startPoint;void mousePressEvent(QMouseEvent *event) override;void mouseMoveEvent(QMouseEvent *event) override;
private slots:void on_pushButton1_clicked();private:Ui::Widget *ui;
};
#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"void Widget::checkTime()
{QTime curr = QTime::currentTime();if(curr.toString("hh:mm:ss") == this->qTime->toString("hh:mm:ss")){QString str = ui->textEdit1->toPlainText();if(str == ""){str = "时间已到";}speaker->say(str);QMessageBox::information(this,"提示","时间已到");this->close();}
}Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);this->setFixedSize(QSize(800,500));this->setWindowFlag(Qt::FramelessWindowHint);this->speaker = new QTextToSpeech(this);//闹钟的时 分 秒设置校验器QIntValidator *validator1 = new QIntValidator(0,23,ui->lineEdit1);QIntValidator *validator2 = new QIntValidator(0,59,ui->lineEdit2);QIntValidator *validator3 = new QIntValidator(0,59,ui->lineEdit3);ui->lineEdit1->setValidator(validator1);ui->lineEdit2->setValidator(validator2);ui->lineEdit3->setValidator(validator3);ui->lineEdit1->setInputMethodHints(Qt::ImhDigitsOnly);ui->lineEdit2->setInputMethodHints(Qt::ImhDigitsOnly);ui->lineEdit3->setInputMethodHints(Qt::ImhDigitsOnly);timer = new QTimer(this);connect(timer, &QTimer::timeout, this, QOverload<>::of(&Widget::checkTime));}Widget::~Widget()
{delete ui;
}void Widget::mousePressEvent(QMouseEvent *event)
{startPoint = event->globalPos() - this->frameGeometry().topLeft();
}void Widget::mouseMoveEvent(QMouseEvent *event)
{this->move(event->globalPos() - startPoint );
}void Widget::on_pushButton1_clicked()
{int hh = -1,mm=-1,ss=-1;if(ui->lineEdit1->text()!=""){hh = ui->lineEdit1->text().toInt();}if(ui->lineEdit2->text()!=""){mm = ui->lineEdit2->text().toInt();}if(ui->lineEdit3->text()!=""){ss = ui->lineEdit3->text().toInt();}if(!QTime::isValid(hh, mm, ss)){QString str("输入的时间不合法,请确认");speaker->say(str);QMessageBox::critical(this,"提示",str);return;}this->qTime = new QTime(hh,mm,ss);ui->label->setText(qTime->toString("hh:mm:ss"));speaker->say(QString("操作成功,您设置的闹钟为%1点%2分%3秒").arg(hh).arg(mm).arg(ss));ui->pushButton1->setEnabled(false);timer->start(1000);//开启定时器
}
20230407 定时闹钟相关推荐
- Android自定义定时闹钟开发详解
这篇文章主要为大家详细介绍了Android自定义定时闹钟开发,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Android开发之自定义闹钟实现,供大 ...
- 单片机简易定时闹钟控制c语言代码,简易定时闹钟.doc
简易定时闹钟 课程名称:单片机课程设计 设计题目: 简易数字闹钟 院 系: 专 业: 年 级: 姓 名: 学 号: 指导教师: 课 程 设 计 任 务 书 专 业 姓 名 学 号 开题日期: 完成日期 ...
- 定时闹钟课程设计c语言,基于单片机89c52定时闹钟的课程设计.pdf
前 言 20 世纪末,电子技术获得了飞速的发展.在其推动下,现代电子产品几乎渗透了 社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高.同时也 使现代电子产品性能进一步提高,产品更新换 ...
- 单片机数字定时闹钟设计c语言,电子设计 基于51单片机的定时闹钟设计.doc
电子设计 基于51单片机的定时闹钟设计 课件之家精心整理资料--欢迎你的欣赏 课件之家精心整理资料--欢迎你的欣赏 摘 要 单片计体积小.能耗低.成本低.功能强,广泛应用于智能产品和工业自动化上.本次 ...
- 闹钟Android实验报告,定时闹钟我的实验报告.doc
定时闹钟我的实验报告 DONGFANG COLLEGE,FUJIAN AGRICULTURE AND FORESTRY UNIVERSITY 课程名称: 单片机原理及接口技术 论文题目: 定时闹钟 系 ...
- c语言编写闹钟主程序流程图,课程设计基于单片机的定时闹钟.docx
课程设计基于单片机的定时闹钟.docx 课程设计 设计题目:基于单片机的定时闹钟 院 系:电气工程 专 业:电子信息工程 年 级: 姓 名: 指导教师: 课程设计任务书 专业电子信息工程姓名学号 开题 ...
- android 定时开机闹钟,win7自动-定时开机、关机(附加定时闹钟)技巧
<如何设置电脑定圣元奶粉时开机>不过瘾?请往圣元奶粉下看: 一.自动定圣元奶粉时开机 此功圣元奶粉定,并且你的主板的高圣元奶粉,并且你的主板的高级电源管理设置必须支持这个功能,不过现在大多 ...
- 闹钟定时设计c语言编程,单片机定时闹钟(课程设计).docx
单片机定时闹钟(课程设计) PAGE \* MERGEFORMAT10 绪 论 摘要: 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM.只读 ...
- STC89C52RC单片机实现简单定时闹钟+LCD1602+DS1302
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一.各模块基本原理 1.DS1302. 1.介绍. 2.内部结构. 3.时钟日历控制寄存器 4.DS130231字节的RA ...
最新文章
- pytorch中调整学习率的lr_scheduler机制
- R语言威尔考克森秩和统计分布函数Wilcoxon rank Sum Statistic Distribution(dwilcox, pwilcox, qwilcox rwilcox)实战
- Windows Server 2012配置***服务环境
- adc采样时间_ADC采样原理
- 11input/output
- el表达式取值优先级
- 总结一下适合自己的看书方式
- SAP License:最近解决的一些SAP问题
- java 基础之图片的多线程处理和大文件的多线程拷贝
- android binder机制分析 以MediaPlayer为例子
- ZStack GPU解决方案
- UVa 10129 - Play on Words (欧拉回路, DFS)
- php源码 备课系统,电子教案管理系统2012版 V3.2
- python第三方插件登录网易音乐_基于 Python3 的网易云音乐下载器(支持嵌入专辑封面等 ID3-Tags 信息)...
- java 分布式任务_Java中实现分布式定时任务
- CTS、CLS、CLR分别作何解释
- 一个新的开始,fightting!
- 《iPad开发从入门到精通》——6.5节地图信息
- MFC中CreateCompatibleDC的作用
- FRP (高性能反向代理应用)