QT6(QTimer和QElapsedTimer以及QComboBox)

QT6


QTimer和QElapsedTimer

QTime是软件定时器,QTime的主要功能是设置一个以毫秒为单位的定时周期,然后进行连续或单次定时
QElapsedTimer用于快速计算两个事件之间的间隔时间,是软件计时器

QTimer

类型 名称 说明
属性 interval 超时间隔(毫秒)
属性 singleShot 是否为单次定时器
属性 active 定时器是否激活
属性 remainingTime 剩余时间(毫秒)
方法 start() 启动定时器
方法 stop() 停止定时器
方法 setInterval(int) 设置时间间隔
方法 isActive() 检查是否激活
信号 timeout() 超时信号

QElapsedTimer

类型 名称 说明
方法 start() 开始计时
方法 restart() 重新开始计时
方法 elapsed() 返回经过的毫秒数
方法 hasExpired(qint64) 检查是否超过指定时间
方法 nsecsElapsed() 返回经过的纳秒数
方法 isValid() 检查计时器是否有效
方法 msecsSinceReference() 自参考时间起的毫秒数
方法 msecsTo(QElapsedTimer) 到另一个计时器的毫秒数
静态方法 clockType() 返回使用的时钟类型
静态方法 isMonotonic() 检查时钟是否单调递增

代码测试

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

#include <QTimer>
#include <QElapsedTimer>
#include <QTime>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
   
   
    ui->setupUi(this);
    m_timer = new QTimer(this);
    m_elapsedTimer = new QElapsedTimer();
    m_timer->stop();
    m_timer->setTimerType(Qt::CoarseTimer);
    // CoarseTimer设置为选中
    ui->radioContinuity_3->setChecked(true);
    m_elapsedTimer = new QElapsedTimer();

    connect(m_timer,&QTimer::timeout,this,&Widget::do_time_timeout);

}

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

void Widget::do_time_timeout()
{
   
   
    QApplication::beep();
    QTime curTime = QTime::currentTime();
    ui
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值