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

code review!

文章目录

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

1.运行

2.main.cc

代码

#include #include #include #include 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 = FileContentReaderTEMPLATE = appSOURCES += main.cppHEADERS +=FORMS +=DISTFILES += \