qt-C++笔记之带有倒计数显示的按钮,计时期间按钮锁定

news/2024/10/17 23:34:35/

qt-C++笔记之带有倒计数显示的按钮,计时期间按钮锁定

code review!

文章目录

  • qt-C++笔记之带有倒计数显示的按钮,计时期间按钮锁定
    • 1.运行
    • 2.main.cc
    • 3.main.pro

1.运行

请添加图片描述

2.main.cc

在这里插入图片描述

代码

#include <QApplication>
#include <QPushButton>
#include <QTimer>
#include <QFont>int main(int argc, char *argv[])
{QApplication app(argc, argv);// 创建主窗口QWidget window;window.setWindowTitle("倒计时按钮示例");// 创建按钮QPushButton button(&window);button.setText("开始倒计时");button.setGeometry(50, 50, 150, 50);// 创建计时器QTimer timer;timer.setInterval(1000); // 设置计时器间隔为1秒(1000毫秒)int countDown = 2; // 倒计时初始值// 设置按钮的样式button.setStyleSheet("font-size: 20px; font-weight: bold;");// 定义按钮点击事件的处理函数QObject::connect(&button, &QPushButton::clicked, [&button, &timer, &countDown]() {button.setEnabled(false); // 禁用按钮timer.start(); // 启动计时器button.setText(QString::number(countDown)); // 显示倒计时初始值});// 定义计时器超时事件的处理函数QObject::connect(&timer, &QTimer::timeout, [&button, &timer, &countDown]() {countDown--; // 倒计时减1if (countDown > 0) {button.setText(QString::number(countDown)); // 更新按钮上的倒计时数字} else {button.setEnabled(true); // 启用按钮button.setText("开始倒计时");timer.stop(); // 停止计时器countDown = 2; // 重置倒计时初始值}});// 运行应用程序window.show();return app.exec();
}

3.main.pro

代码

QT += widgetsTARGET = FileContentReader
TEMPLATE = appSOURCES += main.cppHEADERS +=FORMS +=DISTFILES += \

http://www.ppmy.cn/news/1185672.html

相关文章

webGL编程指南 第五章 MultiAttributeSize_interleaved.js

我会持续更新关于wegl的编程指南中的代码。 当前的代码不会使用书中的缩写&#xff0c;每一步都是会展开写。希望能给后来学习的一些帮助 git代码地址 &#xff1a;空 在上一章节中我们使用的是2个buffer&#xff0c;向着色器中传递数据&#xff0c;本章节中我们学习使用一个…

voice 和token 互相转

voice 和token 互相转 解释代码解释 这段代码实现了一个将音频数据转换为 token 列表,并将 token 列表转换回音频的转换过程。以下是代码的主要步骤: 导入所需的库,包括 paddle、numpy、tqdm 和 glob。 定义一个名为 read_and_gen_token 的函数,该函数接受一个音频文件名作…

网上的流量卡与实际不符,可能是这三种原因导致的!

很多朋友反映&#xff0c;自己在网上买的流量卡套餐内流量与实际情况不符&#xff0c;其实&#xff0c;这是一种比较常见的现象&#xff0c;今天&#xff0c;关于其中的原因&#xff0c;小编给大家介绍一下。 ​ 如果买的流量卡套餐内流量与实际不符&#xff0c;无非有三种原因…

AI助力隧道等洞体类场景下水泥基建缺陷检测,基于DeeplabV3Plus开发构建洞体场景下壁体建筑缺陷分割系统

随着智能化硬件的加持&#xff0c;越来越多的场景开始有AI的助力&#xff0c;诸如&#xff1a;道路自动巡检养护、隧道巡检、铁路质检等等&#xff0c;引入AI技术可以大幅降低人工工作量&#xff0c;提升质检的工作效率&#xff0c;在前面的文章中我们已经落地实践开发洞体类场…

Baklib Max 新产品上线,全面助力企业数字化体验

2023年9月28日&#xff0c;数字内容云平台Baklib Max正式上线。作为一款旨在统一管理企业数字媒体资产的平台&#xff0c;Baklib Max通过网站、知识库、社区、Chat等多种形式多场景应用展示&#xff0c;全面实现对企业数字资产、媒体内容、知识沉淀的统一管理应用&#xff0c;帮…

echarts修改图例legend样式:正方形、矩形、圆形、圆角

ECharts 提供的标记类型有 ‘circle’, ‘rect’, ‘roundRect’, ‘triangle’, ‘diamond’, ‘pin’, ‘arrow’, ‘none’ legend: {icon: circle }参考文章 echarts 图例修改legend中icon的形状及大小

ESP8266模块常规调试过程讲解

ESP8266-WIFI模块串口调试过程讲解 一、ESP8266介绍 ESP8266是一个高度集成的无线SoC(System on a Chip)模块,基于ESP8266芯片,集成了Wi-Fi功能。具有丰富的特性和功能,广泛应用于各种物联网项目中。 ESP8266模块支持802.11b/g/n无线标准,内置TCP/IP协议栈,可以实现串…

【C++基础入门】44.C++中对象模型分析(上)

一、回归本质 class 是一种特殊的 struct 在内存中 class 依旧可以看作变量的集合class 与 struct 遵循相同的内存对齐规则class 中的成员函数与成员变量是分开存放的 每个对象有独立的成员变量所有对象共享类中的成员函数值得思考的问题 下面看一个对象内存布局的代码&#x…