Timer QML Type 译文

本文介绍了QtQuick中的Timer组件,用于以指定间隔触发处理程序,可用于单次或重复执行。示例展示了如何每500毫秒更新文本显示当前时间。Timer与动画计时器同步,分辨率可达16ms。文章还详细解释了其属性如interval、repeat、running等,以及start、stop、restart方法。此外,还提到了触发信号和启动时的行为选项。
摘要由CSDN通过智能技术生成

以指定的时间间隔触发一个处理程序。

import声明: import QtQml 2.15


 

属性:

  • interval: int
  • repeat: bool
  • running: bool
  • triggeredOnStart: bool

信号:

  • triggered()

成员方法:

  • restart()
  • start()
  • stop()

详细说明:

一个Timer可以用来单次触发,也可以定时重复触发。

下面这个Timer例子,展示当前系统日期和时间,每500毫秒更新一次文本。使用 JavaScript 的 Date 对象访问当前系统时间。

import QtQuick 2.0
Item {
    Timer {
        interval: 500; running: true; repeat: true
        onTriggered: time.text = Date().toString()
    }

    Text { id: time }
}

Timer类型和动画计时器同步。因为动画计时器通常设置为60fps(每秒60帧),所以Timer的分辨率最多为16ms(60分之一秒)。

 

如果当计时器正在运行时,它的属性发生变化,则消耗的时间将会重置。举例,如果一个计时器设置的更新时间是1000ms,在它执行500ms时,它的 repeat 属性改变了,那么消耗的时间重置为0。计时器将会正在下一个1000后触发处理程序。

 

详情查阅 Qt Quick Demo - Clocks.


属性文档:

interval: int

设置触发间隔时间,单位毫秒

默认值是 1000 ms

 

repeat: bool

如果 repeat 设置为 true,计时器会在指定时间间隔重复执行。否则计时器只会执行一次,在指定时间间隔结束即停止(running 属性会被设置为 false

默认值是 false

 

running: bool

如果设置为 true,启动计时器;否则终止计时器。对于一个非重复的计时器,触发结束后 running 会被设置为 false

默认值是 false

 

triggeredOnStart: bool

当启动一个计时器,第一次触发是在消耗完指定时间之后。有时也希望计时器刚启动就触发执行程序;例如,需要建立初始状态。

 

如果 triggeredOnStart 被设置为 true,那么计时器启动立即触发,随后才开始计时指定时间间隔。注意如果 repeat 设置为  false,计时器会触发两次,一次是启动时,一次是计时结束。

默认值是 false


信号文档:

triggered()

计时结束时,发射信号。

注意:对应的处理程序是 onTriggered。


成员方法文档:

restart()

重置计时器

如果计时器没有执行,那么就启动它,否则就停止,重置到初始状态并启动。调用 restart() 函数,running 属性也会设置为 true。

 

start()

启动计时器

如果计时器已经启动,调用此方法无效。调用此方法 running 属性设置为 true

 

stop()

停止计数器

如果计时器停止,调用此方法无效。调用此方法 running 属性设置为 false


 

原文地址:https://doc.qt.io/qt-5/qml-qtqml-timer.html#details

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值