QT学习day4

 作业:做一个闹钟

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//给定时器指针实例化一个对象timer = new QTimer(this);//给语音播报者实例化一个空间speecher = new QTextToSpeech(this);//将该定时器的timeout信号链接到自定义的槽函数中//connect(timer,&QTimer::timeout,this,&Widget::timeout_slot);this->setWindowTitle("闹钟小能手");this->setWindowIcon(QIcon(":/pictrue/R-C.png"));//窗口QPixmap background(":/pictrue/bd315c6034a85edf9c8a4d994f540923dd547501.jpg");// 创建一个QPalette对象,并将背景图像设置为窗口背景QPalette palette;palette.setBrush(this->backgroundRole(), QBrush(background));this->setPalette(palette);// 将窗口的背景模式设置为固定尺寸this->setAutoFillBackground(true);/********************************************************************************///    //设置闹钟背景//    //  ui->Qlable->setPixmap(QPixmap(":/pictrue/bd315c6034a85edf9c8a4d994f540923dd547501.jpg"));//    //    //自动适应标签//    //    ui->Qlable->setScaledContents(true);//按钮设计ui->btn1->setIcon(QIcon(":/pictrue/R-C.png"));ui->btn1->setWindowOpacity(0.9);ui->btn2->setIcon(QIcon(":/pictrue/R-C.jfif"));//标签设计ui->Lable1->setPixmap(QPixmap(":/pictrue/R-C.png"));//自动适应标签ui->Lable1->setScaledContents(true);ui->Lable1->setWindowOpacity(0.9);//标签设计ui->Lable2->setPixmap(QPixmap(":/pictrue/R-C.jfif"));//自动适应标签ui->Lable2->setScaledContents(true);ui->Lable2->setWindowOpacity(0.9);}Widget::~Widget()
{delete ui;
}
void Widget::timerEvent(QTimerEvent *e)//定时器处理事件
{if(e->timerId()==timer_id){QTime s=QTime::currentTime();//获取系统时间//将QTime类对象转换为字符串QString t=s.toString("hh:mm:ss");//展示到ui界面ui->Lable1->setText(t);//居中显示ui->Lable1->setAlignment(Qt::AlignCenter);//设置字体// 创建一个字体对象QFont font("Arial", 30, QFont::Bold);// 设置标签的字体ui->Lable1->setFont(font);//接收输入的文本QString v = ui->lineEdit->text();if(t==v){//speecher->say(ui->Lable3->text());int i=0;//播报十遍while( i=10){speecher->say(ui->textEdit->toPlainText());i++;}}}}void Widget::on_btn1_clicked()//启动按钮
{//启动一个定时器,超过时间和自动调用定时器事件处理函数timer_id=this->startTimer(1000);
}void Widget::on_btn2_clicked()//停止按钮
{//关闭给定的定时器this->killTimer(timer_id);}

效果图: 

 

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

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

相关文章

总结一下vue中v-bind的常见用法

文章目录 🐕前言:🏨简述一下v-bind命令其它写法 🐕前言: 本篇博客主要总结一下v-bind命令在vue中的常见用法 🏨简述一下v-bind命令 v-bind命令是将动态的数据属性与咱们的标签进行一个绑定,它可以绑定标…

【Unity3D编辑器拓展】Unity3D的IMGUI、GUI、GUILayout、EditorGUI、EditorGUILayout、OnGUI【全面总结】

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 在开发中,常常会遇到要使用OnGUI的地方。 也会遇到…

基础课2——自然语言处理

1.概念 自然语言处理(Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向,它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。 自然语言处理的主要研究方向包括: 语言学研究&…

我们不一样①

我们不一样① 从hello world开始 别人的hello world​​ 我们的hello world 代码展示 #include <stdio.h> int main(){printf("\033[31mhello world\033[0m"); getchar();return 0; } 此处用了 ANSI转义序列 ANSI转义序列是一种带内信号的转义序列标准&am…

【electron】实战技巧(持续更新,不要错过喔)

▒ 目录 ▒ &#x1f6eb; 导读需求开发环境 1️⃣ nvm处理多node环境避免node版本切换指定32位/64位 2️⃣ 常用node库npm-run-all&#xff08;脚本运行工具&#xff09;cross-env&#xff08;配置环境变量&#xff09;dotenv&#xff08;配置文件&#xff09;minimist&#x…

Apollo中的身份验证与授权:保护你的数据

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

模拟器-雷电-使用adb push或adb pull操作文件

一、环境 windows 10 雷电模拟器4.0.83 二、问题 有时候我们会需要往模拟器拷贝文件或者复制文件到我的电脑 三、方法 1、获取root权限 adb root adb remount 有可能遇到【daemon not running; starting now at tcp:5037】的报错 查看端口占用进程&#xff1a;netstat -…

Linux--进程终止

1.进程退出场景 进程退出场景只有三种&#xff1a; 代码运行完毕&#xff0c;结果正确代码运行完毕&#xff0c;结果错误代码在运行期间异常中断&#xff0c;退出进程 比如&#xff1a;对于错误的进程&#xff0c;可以通过不同的返回值来确定&#xff0c;什么是错误码呢&#x…

腾讯云 CODING 快速应用中心,让您 10 分钟轻松玩转 AIGC

点击链接了解详情 前言 AI 时代已经到来&#xff0c;与其说这是一个技术变革&#xff0c;不如说这是对我们工作和生活方式的全面升级。很多人已经听说过 Stable Diffusion AI 绘图和 Meta 公司推出的免费大语言模型 Llama 2&#xff0c;它们代表了当今最前沿的技术水平。但对于…

idea2023配置maven

看过【黑马程序员Maven全套教程&#xff0c;maven项目管理从基础到高级&#xff0c;Java项目开发必会管理工具maven】https://www.bilibili.com/video/BV1Ah411S7ZE?p9&vd_sourceedf9d91e5a0a27db51e3d6d4b9400637 配置的&#xff0c;前提要素配置也在这个课程里有啦&…

红队专题-从零开始VC++C/S远程控制软件RAT-MFC-[4]客户端与服务端连接

红队专题 招募六边形战士队员服务端编写新建工程server函数创建主线程类获取配置信息运行command 命令头文件里创建引用win32 类库/头文件startsocket 开始监听 类函数添加类StartSocketmysend/myrecv 设置 m_sockCommon 头文件MSGINFO_S 结构体 ThreadMain头文件runflag 启动 …

15-bean生命周期,循环依赖

文章目录 1. bean生命周期 1. bean生命周期

数据挖掘原理与算法

一、什么是闭合项集? Close算法对Apriori算法的改进在什么地方? 闭合项集&#xff1a;就是指一个项集x&#xff0c;它的直接超集的支持度计数都不等于它本身的支持度计数。 改进的地方&#xff1a; 改进方向&#xff1a; 加速频繁项目集合的生成&#xff0c;减少数据库库的扫…

【SA8295P 源码分析 (三)】97 - QNX AIS Camera 框架介绍 及 Camera 工作流程分析

【SA8295P 源码分析】97 - QNX AIS Camera 框架介绍 及 Camera 工作流程分析 一、QNX AIS Server 框架分析二、QNX Hypervisor / Android GVM 方案介绍三、Camera APP 调用流程分析四、QCarCam 状态转换过程介绍五、Camera 加串-解串 硬件链路分析六、摄像头初始化检测过程介绍…

大模型、实时需求推动湖仓平台走向开放

大模型、实时需求高涨 AGI 时代&#xff0c;以 ChatGPT、Midjourney 等为代表的大模型迅速应用加速了 AI 普及&#xff0c;越来越多的企业选择搭建自己的 AI 基础设施&#xff0c;训练行业大模型。 另一方面&#xff0c;企业为了在瞬息万变的市场环境中更快的做出商业决策&…

【C++】命名空间和using namespace std的注意事项

&#x1f490; &#x1f338; &#x1f337; &#x1f340; &#x1f339; &#x1f33b; &#x1f33a; &#x1f341; &#x1f343; &#x1f342; &#x1f33f; &#x1f344;&#x1f35d; &#x1f35b; &#x1f364; &#x1f4c3;个人主页 &#xff1a;阿然成长日记 …

分享一下怎么开发一个陪诊小程序

开发一个陪诊小程序需要综合考虑许多方面&#xff0c;包括但不限于市场需求、用户体验、技术实现和运营策略。以下是一篇以开发陪诊小程序为主题的文章。 一、背景介绍 随着社会的发展和人口老龄化的加剧&#xff0c;越来越多的老年人、病患和孕妇需要就医&#xff0c;而由于各…

【分布式】入门级NCCL多机并行实践 - 02

# 背景知识 大模型和分布式训练对数据的吞吐量以及并行度都有很高的要求&#xff0c;NCCL就是在这个背景下诞生的。 如果你是一个只会写写Python&#xff0c;调用PyTorch和Horovod的算法萌新&#xff0c;可能对于分布式底层的东西不太了解&#xff0c;在下岗热潮中被主管逼着…

Java并发面试题:(七)ThreadLocal原理和内存泄漏

ThreadLocal是什么&#xff1f; ThreadLocal是线程本地存储机制&#xff0c;可以将数据缓存在线程内部。ThreadLocal存储的变量在线程内共享的&#xff0c;在线程间又是隔离的。 ThreadLocal实现原理&#xff1f; ThreadLocal的底层是ThreadLocalMap&#xff0c;每个Thread都…

Open3D(C++) 最小二乘拟合平面(拉格朗日乘子法)

目录 一、算法原理二、代码实现三、结果展示本文由CSDN点云侠原创,原文链接。 一、算法原理 设拟合出的平面方程为: a x + b y + c