9.2 消息对话框 画板 定时器

news2024/11/15 20:06:22
#include "widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{

    //设置定时器
    timer=new QTimer(this);
    timeid=this->startTimer(1000);
    connect(timer,&QTimer::timeout,this,&Widget::timeout_slot);
    speecher=new QTextToSpeech(this);
    //边框
    this->setFixedSize(500,400);
    this->setWindowTitle("时钟");
    //时钟框
    lab=new QLabel(this);
    this->lab->resize(220,50);
    this->lab->move(50,50);
    //闹钟框
    edit=new QLineEdit(this);
    this->edit->setInputMask("00:00");
    this->edit->resize(150,50);
    this->edit->move(300,30);
    //启动按钮
    but1=new QPushButton("启动",this);
    this->but1->resize(70,30);
    this->but1->move(edit->x(),edit->y()+70);
    //停止按钮
    but2=new QPushButton("关闭",this);
    this->but2->resize(70,30);
    this->but2->move(but1->x()+90,but1->y());
    //语音播报框
    text=new QTextEdit(this);
    this->text->setPlaceholderText("铃声");
    this->text->resize(400,200);
    this->text->move(50,150);
    connect(but1,&QPushButton::clicked,this,&Widget::on_but1_clicked);
    connect(but2,&QPushButton::clicked,this,&Widget::on_but2_clicked);
}

Widget::~Widget()
{
}
void Widget::timerEvent(QTimerEvent *event)
{
        if(event->timerId()==timeid)
        {
        QDateTime sys_dt=QDateTime::currentDateTime();
        //展示时间到ui界面
        this->lab->setText(sys_dt.toString("hh:mm"));
        this->lab->setAlignment(Qt::AlignCenter);//设置标签文本对齐方式
        this->lab->setFont(QFont("宋体",15));
        }
}

void Widget::on_but1_clicked()
{
    timeid1=this->startTimer(5000);
    but1->setEnabled(false);
    text->setEnabled(false);

}
void Widget::on_but2_clicked()
{
    int ret=QMessageBox::information(this,"提示","是否取消闹钟",QMessageBox::Yes|QMessageBox::No,QMessageBox::Yes);
    if(QMessageBox::Yes==ret)
    {
        this->killTimer(timeid1);
        but1->setEnabled(true);
        text->setEnabled(true);
        edit->clear();
    }

}
void Widget::timeout_slot()//处理timeout信号对应的槽函数
{
    if(lab->text()==edit->text())
    {
        QString lm=text->toPlainText();
        speecher->say(lm);
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/973253.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

天眼情报分析——编程赛道——研究对象001续

前言: 此次情报分析依旧会分为几大块 一、ACWING 算法基础课 1.高精度加法和减法听都没听过 1.什么是高精度加减法? "高精度加法"和"高精度减法"是一类编程题目,通常出现在算法竞赛和在线编程平台上,比如…

金蝶云星空和金蝶云星空单据接口对接

金蝶云星空和金蝶云星空单据接口对接 接入系统:金蝶云星空 金蝶K/3Cloud(金蝶云星空)是移动互联网时代的新型ERP,是基于WEB2.0与云技术的新时代企业管理服务平台。金蝶K/3Cloud围绕着“生态、人人、体验”,旨在帮助企业…

【科研论文配图绘制】task8 总结与回顾

task8 总结与回顾,这次组队学习大致掌握了常见python绘图工具包的使用,整体上和matlab的语法类似,也是用画布形式控制元素的绘制。印象深刻的是seaborn的使用,在之前做波士顿房价预测时候先接触了seaborn绘制的散点图、直方图和核…

手写Ribbon基本原理

本文已收录于专栏 《中间件合集》 目录 概念说明什么是RibbonRibbon和Nginx负载均衡的区别 工作流程代码实现RibbonSDK发送请求端引入RibbonSDK和Nacos的依赖配置文件中填写负载均衡策略调用代码 接收请求端执行效果发送请求端接收请求端 总结提升 概念说明 什么是Ribbon Ribb…

揭秘企业标准化作业:提升效率、降低成本、保障质量!为什么需要推行?

企业标准化作业是现今生产车间中出现频率非常高的一个词,那么什么是企业标准化作业?企业为什么推行标准化作业?标准化作业的实施有哪些好处?实施过程又有哪些难点呢?今天就来说一说! 企业标准化作业是对生产…

智能制造效率与创新:RFID智能设备的引领作用

在现代制造业中,如何提升生产效率、降低成本、实现创新已经成为制造企业持续追求的目标。随着科技的不断进步,智能制造RFID智能设备正逐渐成为实现这些目标的得力工具。本文将探讨智能制造RFID智能设备在提升制造效率和创新方面的引领作用。 实时生产监控…

如何使用ArcGIS去除卫星影像上的云

虽然目前发布的地图都是对云量进行过筛选(一般低于20%),但是还是有可能会遇到有云的情况(特别是下载历史影像的时候),那么这些云应该怎么去除呢,我们可以尝试使用ArcGIS进行处理。 识别像素 将…

通过使用过硫酸铵溶液轻松预处理铜催化剂基底具有独特底部轮廓的剥离光刻胶的开发

引言 石墨烯是sp2杂化碳原子的二维蜂窝晶格,自首次成功分离和表征单层石墨烯以来就引起了广泛关注。载流子迁移率、稳健的机械公差和高光学透明度为未来的超大规模器件的应用提供了巨大的利用机会。因此,英思特提出了化学剥离、外延生长、热解和化学气相…

FreeRTOS中断与任务之间同步(Error:..\..\FreeRTOS\portable\RVDS\ARM_CM4F\port.c,422 )

前言: FreeRTOS中,中断需要注意几点: 何时使用中断;中断服务函数(ISR)要处理的数据量有多大,通常我们希望中断的切换越快越好,也就是说,ISR尽量采用耗时较少的处理方式…

2000-2022年上市公司融资约束SA指数(含原始数据+计算方法+计算结果)

2000-2022年上市企业的融资约束指数(含原始数据计算方法计算结果) 1、时间:2000-2022年 2、范围:沪深A股上市公司 3、指标: 证券代码、证券简称、统计截止日期、是否发生ST或*ST或PT、是否发生暂停上市、行业代码、…

【Java 基础篇】Java多态:让你的代码更灵活而强大

多态是面向对象编程中的一个重要概念,它允许我们在不同的对象上调用相同的方法,但根据对象的不同,可以产生不同的行为。在 Java 中,多态性是一个强大的特性,它有助于代码的可扩展性和可维护性。本篇博客将深入探讨 Jav…

javaee spring aop实现事务 项目结构

spring配置文件 <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns:context"http://www.springframewo…

搭建hadoop集群的常见问题及解决办法

问题一: namenode -format重复初始化 出现问题的原因是重复初始化时会重新生成集群ID&#xff0c;而dn还是原先的集群ID&#xff0c;两者不匹配时无法启动相应的dn进程。 怎么查找问题原因&#xff1a;在logs目录下找到对应节点的.log文件&#xff0c;使用tail -200 文件名来查…

(vue)Vue项目中使用jsPDF和html2canvas生成PDF

(vue)Vue项目中使用jsPDF和html2canvas生成PDF 效果&#xff1a; 安装与使用 1.&#xff1a;安装jsPDF和html2canvas npm install jspdf html2canvas2.在需要生成PDF文档的组件中引入jsPDF和html2canvas <template><div><el-button type"primary"…

Android平台GB28181历史视音频文件检索规范探讨及技术实现

技术背景 我们在做Android平台GB28181设备接入侧模块的时候&#xff0c;特别是执法记录仪或类似场景&#xff0c;系统除了对常规的录像有要求&#xff0c;还需要能和GB28181平台侧交互&#xff0c;比如实现设备侧视音频文件检索、下载或回放。本文假定记录仪或相关设备已经完成…

Gin项目实战

Gin项目实战 Gin博客项目-项目架构Gin博客项目-集成gormGin博客项目-集成Bootstrap创建用户表单Gin 博客项目-实现控制器和路由Gin 博客项目-设计静态页面Gin 博客项目-用户注册Gin 博客项目-用户登录Gin 博客项目-集成markdown编辑器Gin 博客项目-创建博客模型和DAOGin 博客项…

MediaBox助力企业一站式获取音视频能力

以一只音视频百宝箱&#xff0c;应对「千行千面」。 洪炳峰、楚佩斯&#xff5c;作者 大家好&#xff0c;今天我分享的主题是MediaBox——行业音视频数字化再加速。 根据权威数据表明&#xff0c;65%的行业数字化信息来自视频&#xff0c;基于此&#xff0c;音视频技术对于行…

长胜证券:三大拐点共振 看好智能驾驶新一轮行情

摘要 【长胜证券&#xff1a;三大拐点共振 看好智能驾驭新一轮行情】长胜证券研报指出&#xff0c;全球共振&#xff0c;国内智驾商场正迎来三大拐点&#xff1a;1&#xff09;技能上&#xff0c;“BEV Transformer数据闭环”新架构2023年开端上车&#xff0c;使得不依靠高精地…

高并发-ExecutorCompletionService

目录 1 为什么要引入高并发 2 ExecutorCompletionService分析 2.1 原理 2.2 api调用分析 3 实操 1 为什么要引入高并发 众所周知&#xff0c;程序中的代码是从下往下顺序执行的&#xff0c;当我们需要在一个方法中同时执行多个耗时的任务时所消耗时间就会大于等于这些任务消…

港陆证券:五日线破位怎么看?

在股票交易中&#xff0c;五日线是个重要的技术指标之一&#xff0c;它能够反映出最近的商场趋势。假如五日线破位&#xff0c;这意味着商场呈现了趋势反转&#xff0c;出资者需求注重趋势改动&#xff0c;并采取相应的出资战略。 首先&#xff0c;咱们来看看五日线破位的原因…