7.27 作业

news2024/9/24 5:23:02

1.闹钟

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

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    tid1 = startTimer(1);//显示时间计时器
    ui->pushButton_2->setEnabled(false);//设置停止为不可用
    QTime time = QTime::currentTime();
    ui->lineEdit->setText(time.toString("hh:mm:ss"));
    speer = new QTextToSpeech(this);//初始化播报员
}

Widget::~Widget()
{
    delete ui;
}

void Widget::timerEvent(QTimerEvent *e)
{
    if(e->timerId() == tid1)//显示时间计时器
    {
        QTime time = QTime::currentTime();
        ui->label->setText(time.toString("hh:mm:ss"));
    }
    if(e->timerId() == tid2)//闹钟计时器
    {
        speer->say(ui->textEdit->toPlainText());//播报内容
        killTimer(tid2);//结束计时器
        ui->lineEdit->setEnabled(true);//设置输入时间可用
        ui->pushButton_2->setEnabled(false);//设置停止不可用
        ui->pushButton->setEnabled(true);//设置开始可用
        ui->textEdit->setEnabled(true);//设置输入文本可用
    }
}

void Widget::on_pushButton_clicked()//开始按钮
{
    QTime time = QTime::currentTime();//记录当前时间
    QTime ttime = QTime::fromString(ui->lineEdit->text(),"hh:mm:ss");//记录输入的时间
    tid2 = startTimer(time.msecsTo(ttime));//把差值放入计时器
    ui->lineEdit->setEnabled(false);
    ui->pushButton_2->setEnabled(true);
    ui->pushButton->setEnabled(false);
    ui->textEdit->setEnabled(false);
}

void Widget::on_pushButton_2_clicked()//停止按钮
{
    killTimer(tid2);
    ui->lineEdit->setEnabled(true);
    ui->pushButton_2->setEnabled(false);
    ui->pushButton->setEnabled(true);
    ui->textEdit->setEnabled(true);
}

2.思维导图

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

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

相关文章

陕西师范大学大学:融合传统与创新的学府之旅

前言 > 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 > 📗本文收录于恒川的日常汇报系列,大家有兴趣的可以看一看 > &#x1f4d…

MUR2080CT/MUR2080CTR-ASEMI快恢复二极管对管

编辑:ll MUR2080CT/MUR2080CTR-ASEMI快恢复二极管对管 型号:MUR2080CT/MUR2080CTR 品牌:ASEMI 封装:TO-220 恢复时间:50ns 正向电流:20A 反向耐压:800V 芯片大小:102MIL*2 …

BGP劫持原理及如何防御

互联网跟人类社会一样,都通过特定的规则和法律来确保社会的正常运行。BGP协议就是互联网中的“规则”之一。BGP用于在不同的自治系统(AS)之间交换路由信息,当两个AS需要交换路由信息时,每个AS都必须指定一个运行BGP的节点,来代表A…

K8s使用Ceph作为后端存储

Ceph概述 部署Ceph集群 Ceph存储使用 Pod使用Ceph持久化数据 Ceph监控 Rook部署Ceph Ceph概述 Ceph介绍 Ceph架构 Ceph核心概念 Ceph介绍 Ceph是一个开源的分布式存储系统,具有高扩展性、高性能、高可靠性等特点,提 供良好的性能、可靠性和可扩展性。…

重新C++系列之运算符重载

一、什么是运算符重载 简单来讲就是对运算符赋予新的意义,但是又不能改变原有的含义,它本身也就是一个函数。运算符重载的本质是以函数的方式来体现。 二、运算符重载有几种 1、按照作用域来划分,有全局操作符重载函数和成员函数操作符重载函…

面向对象——步入JavaScript高级阶段的敲门砖

目录 前言一、认识对象1.什么是对象2.对象的方法3.对象的遍历4.对象的深浅克隆 二、认识函数上下文1.函数的上下文规则 ★2.call和apply ★ 三、构造函数1.用new操作符调用函数2.类与实例3.构造函数和类" 四、原型和原型链1.prototype和原型链查找 ★2.在prototype上添加方…

access偏移注入

偏移注入是因为知道猜到access数据库表名&#xff0c;猜不到列名 因为之前http://192.168.246.11:83/news_view.asp?id15网站有设置waf过滤&#xff0c;需要先把waf防御先删掉后使用 <!--#include file"waf.asp"--> 之前已经知道注入点&#xff0c;详见acces…

从简单的例子 来看 倒排索引

文章首发地址 倒排索引-是什么&#xff1f; 倒排索引&#xff08;Inverted Index&#xff09;是一种常用的文本检索技术&#xff0c;用于快速定位包含某个词汇的文档集合。它的原理是将文档中的每个单词记录在一个索引表中&#xff0c;并且将每个单词所对应的文档编号和位置都…

多租户的低代码平台,Saas开发平台:MateCloud

简介 MateCloud是一款基于Spring Cloud Alibaba的微服务架构。目前已经整合Spring Boot 2.7.0、 Spring Cloud 2021、Spring Cloud Alibaba 2021、Spring Security Oauth2、Feign、Dubbo、JetCache、RocketMQ等&#xff0c;支持多租户的低代码平台&#xff0c;Saas平台开发套件…

Linux磁盘管理命令

目录 1. du (disk usage文件和目录占用的磁盘空间) 2. df (disk free 查看磁盘使用情况) 3. lsblk(list block查看块设备挂载情况) 1. du (disk usage文件和目录占用的磁盘空间) du [-ahskm] 目录/文件&#xff08;文件大小可以直接使用ll查看&#xff09; 选项与参数&a…

树的遍历(一题直接理解中序、后序、层序遍历,以及树的存储)

题目如下&#xff1a; 一个二叉树&#xff0c;树中每个节点的权值互不相同。 现在给出它的后序遍历和中序遍历&#xff0c;请你输出它的层序遍历。 输入格式 第一行包含整数 N&#xff0c;表示二叉树的节点数。 第二行包含 N 个整数&#xff0c;表示二叉树的后序遍历。 第…

二、Spring源码-初始化

Spring初始化源码分析 接下来我们详细分析下refresh方法的作用。 一、refresh方法 Overridepublic void refresh() throws BeansException, IllegalStateException {synchronized (this.startupShutdownMonitor) {// 1.context 为刷新做准备// Prepare this context for refre…

速速收藏!程序员副业赚钱的8种模式

程序员副业赚钱的方式有很多&#xff0c;我总结了程序员兼职赚钱&#xff0c;增加收入的八种模式&#xff0c;希望能够给在迷茫的程序员一点参考&#xff01; 投资理财 很多程序员多少都会买买基金、炒炒股作为一个小副业&#xff0c;由于程序员大多是理科生&#xff0c;有比…

机器学习笔记之优化算法(一)无约束优化概述

机器学习笔记之优化算法——无约束优化概述 引言回顾&#xff1a;关于支持向量机的凸二次优化问题无约束优化问题概述解析解与数值解数值解的单调性关于优化问题的策略线搜索方法信赖域方法 引言 从本节开始&#xff0c;将介绍优化算法 ( Optimization Algorithm ) (\text{Opt…

短视频去水印小程序,一键部署你的小程序,可开流量主,实现睡后收入

插件地址 短视频去水印小程序&#xff0c;一键部署你的小程序&#xff0c;可开流量主&#xff0c;实现睡后收入 插件说明 本插件包含以下两部分&#xff1a; 短视频去水印插件&#xff0c;仅为一个接口&#xff0c;可以集成到自己的任意程序中。短视频去水印插件配套小程序…

WGCLOUD - v3.4.7开始访问地址不用加/wgcloud了

WGCLOUD在v3.4.7版本更新中说明&#xff0c;从v3.4.7版本开始&#xff0c;访问server页面&#xff0c;不用在URL加/wgcloud了 只需要IP和端口就可以了&#xff0c;如&#xff1a;http://localhost:9999

自媒体必备的8个素材网站,视频、音效、图片全部免费下载

自媒体必备的视频、音效、图片素材&#xff0c;这8个网站帮你解决。赶紧马住&#xff01; 菜鸟图库 https://www.sucai999.com/video.html?vNTYwNDUx 菜鸟图库虽然是一个设计网站&#xff0c;但它还有非常丰富的视频和音频素材&#xff0c;视频素材全部都是高清无水印&#…

尚硅谷8:开发平台接口,SpringCloud,上传排班

目录 内容介绍 开发平台接口-查询医院 开发平台接口-上传科室接口 开发平台接口-查询科室接口 开发平台接口-删除科室接口 上传排班和查询排班接口 医院列表功能&#xff08;接口&#xff09; 内容介绍 1、开发平台接口-查询医院 2、开发平台接口-上传科室接口 3、开发…

leetcode-707.设计链表

leetcode-707.设计链表 文章目录 leetcode-707.设计链表一.题目描述二.代码随想录三.易错点 一.题目描述 二.代码随想录 代码 class MyLinkedList {public:// 定义链表节点结构体struct ListNode {int val;ListNode *next;ListNode(int val) : val(val), next(nullptr) {}};//…

Apipost变量高亮展示,变量操作更流畅

之前Apipost配置的各种环境变量只能在右上角环境管理中查看&#xff0c;很多小伙伴希望能有一种更好的解决方案用以快速复制变量值&#xff0c;快速查看变量的当前值和初始值&#xff0c;于是在Apipost 7.1.7中我们推出环境变量高亮展示功能来满足用户的使用需求。 功能描述&a…