Qt之等待提示框(QTimer)

简介:

简述

上节讲述了关于QPropertyAnimation实现等待提示框的显示,本节我们使用另外一种方案来实现-使用定时器QTimer,通过设置超时时间定时更新图标达到旋转效果。

效果

由于录制程序的原因,引起gif效果不清晰,可忽略。

这里写图片描述

资源

需要几张不同阶段的图标进行切换,这里使用8张。

这里写图片描述

源码

QTimer通过setInterval设置100毫秒超时时间,每隔100毫秒后进行图标的更换,达到旋转效果。

m_pTimer = new QTimer(this);、
// 设定超时时间100毫秒
m_pTimer->setInterval(100);
connect(m_pTimer, &QTimer::timeout, this, &MainWindow::updatePixmap);

startAnimation();
// 启动定时器
void MainWindow::startAnimation()
{
    m_pTimer->start();
}

// 停止定时器
void MainWindow::stopAnimation()
{
    m_pTimer->stop();
}

// 更新图标
void MainWindow::updatePixmap()
{
    //若当前图标下标超过8表示到达末尾,则重新计数
    m_nIndex++;
    if (m_nIndex > 8)
        m_nIndex = 1;

    QPixmap pixmap(QString(":/Images/loading%1").arg(m_nIndex));
    m_pLoadingLabel->setPixmap(pixmap);
}
相关文章
|
6月前
|
API
【Qt】Qt定时器类QTimer
【Qt】Qt定时器类QTimer
|
7月前
|
Linux 图形学
深入理解Qt定时器:QTimer的魅力与挑战(一)
深入理解Qt定时器:QTimer的魅力与挑战
4291 0
|
7月前
|
安全 API 开发者
深入理解Qt定时器:QTimer的魅力与挑战(二)
深入理解Qt定时器:QTimer的魅力与挑战
476 0
|
7月前
|
安全
深入理解Qt多线程编程:QThread、QTimer与QAudioOutput的内在联系__Qt 事件循环(三)
深入理解Qt多线程编程:QThread、QTimer与QAudioOutput的内在联系__Qt 事件循环
195 0
|
7月前
|
存储 安全 程序员
深入理解Qt多线程编程:QThread、QTimer与QAudioOutput的内在联系__Qt 事件循环(二)
深入理解Qt多线程编程:QThread、QTimer与QAudioOutput的内在联系__Qt 事件循环
807 0
|
7月前
|
安全 测试技术 C++
深入理解Qt多线程编程:QThread、QTimer与QAudioOutput的内在联系__Qt 事件循环(一)
深入理解Qt多线程编程:QThread、QTimer与QAudioOutput的内在联系__Qt 事件循环
458 0
|
7月前
|
编解码 算法 Unix
【Qt 应用开发 】QT 三种定时器的介绍 以及 QTimer startTimer/Timerevent QBasicTimer 之间的区别
【Qt 应用开发 】QT 三种定时器的介绍 以及 QTimer startTimer/Timerevent QBasicTimer 之间的区别
1233 0
Qt | 定时器的使用 QTimer
学习使用Qt定时器的用法。
971 0
|
UED Python Windows
Python Qt GUI设计:QTimer计时器类、QThread多线程类和事件处理类(基础篇—8)
Python Qt GUI设计:QTimer计时器类、QThread多线程类和事件处理类(基础篇—8)
Python Qt GUI设计:QTimer计时器类、QThread多线程类和事件处理类(基础篇—8)
|
Windows Linux iOS开发
Qt之QTimer
简述 QTimer类提供了重复和单次触发信号的定时器。 QTimer类为定时器提供了一个高级别的编程接口。很容易使用:首先,创建一个QTimer,连接timeout()信号到适当的槽函数,并调用start(),然后在恒定的时间间隔会发射timeout()信号。 注意:当QTimer的父对象被销毁时,它也会被自动销毁。 简述 详细说明 精度 替代QTimer
2320 0