比较QTime和QTimer的值

Compare QTime and QTimer values

本文关键字:的值 QTimer QTime 比较      更新时间:2023-10-16

我想在x秒后调用一个函数,在y秒后调用另一个函数等。调用函数之前等待的秒数存储在QTime

中。

我想启动一个计时器,当这个QTimer的值是QTime的值之一时,调用函数,但我不知道怎么做。

下面是我对"伪代码"的想法:

QTime time1(0, 0, 10); // 00:00:10
QTime time2(0, 0, 15); // 00:00:15
// Init a QTimer
if (QTimer.value == time1.value)
    function1();
if (QTimer.value == time2.value)
    function2();

我怎么能做到呢?

谢谢你的帮助

最简单的方法是简单地使用两个QTimer对象,每个对象具有各自函数的间隔。

另一种选择是以最小公分母的速率(在您的示例中为5秒)触发单个计时器,并以适当的计数调用每个函数。即function1每隔一秒超时,function2每隔三秒超时。

另一个选项是计算到下一个事件的时间,并以该时间间隔启动计时器。