QBasicTimer 类

QBasicTimer 类为对象提供计时器事件。 更多...

头: #include <QBasicTimer>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

公共函数

QBasicTimer ()
QBasicTimer (QBasicTimer && other )
~QBasicTimer ()
bool isActive () const
(从 6.5 起) void start (std::chrono::milliseconds duration , QObject * object )
(从 6.5 起) void start (std::chrono::milliseconds duration , Qt::TimerType timerType , QObject * obj )
void stop ()
void swap (QBasicTimer & other )
int timerId () const
QBasicTimer & operator= (QBasicTimer && other )
void swap (QBasicTimer & lhs , QBasicTimer & rhs )

详细描述

这是用于 Qt 内部的快速、轻量、低级类。推荐使用更高级 QTimer 类而不是此类,若想要在应用程序中使用计时器。注意,该计时器是将发送后续计时器事件的重复计时器,除非 stop () 函数被调用。

To use this class, create a QBasicTimer, and call its start() function with a timeout interval and with a pointer to a QObject 子类。当超时时,计时器会将计时器事件发送给 QObject 子类。可以在任何时候停止计时器,使用 stop (). isActive () 返回 true 对于在运行 (即:它已启动,尚未到达超时时间,且尚未停止) 计时器。检索计时器的 ID 可以使用 timerId ().

此类的对象无法拷贝,但可以移动,因此,可以通过将基本计时器保存在支持仅移动类型 (如 std::vector) 的容器中来维护它们的列表。

另请参阅 QTimer , QTimerEvent , QObject::timerEvent (), 计时器 ,和 仿射变换 .

成员函数文档编制

[constexpr noexcept] QBasicTimer:: QBasicTimer ()

构造基本计时器。

另请参阅 start ().

[noexcept] QBasicTimer:: QBasicTimer ( QBasicTimer && other )

移动构造基本计时器从 other ,其保持 inactive .

另请参阅 isActive () 和 swap ().

[noexcept] QBasicTimer:: ~QBasicTimer ()

销毁基本计时器。

[noexcept] bool QBasicTimer:: isActive () const

返回 true 若计时器在运行且尚未停止;否则返回 false .

另请参阅 start () 和 stop ().

[since 6.5] void QBasicTimer:: start ( std::chrono::milliseconds duration , QObject * object )

启动 (或重启) 计时器按 duration timeout. The timer will be a Qt::CoarseTimer 。见 Qt::TimerType 了解不同计时器类型的有关信息。

给定 object 将接收计时器事件。

该函数在 Qt 6.5 引入。

另请参阅 stop (), isActive (), QObject::timerEvent (),和 Qt::CoarseTimer .

[since 6.5] void QBasicTimer:: start ( std::chrono::milliseconds duration , Qt::TimerType timerType , QObject * obj )

启动 (或重启) 计时器按 duration timeout and the given timerType 。见 Qt::TimerType 了解不同计时器类型的有关信息。

obj 将接收计时器事件。

该函数在 Qt 6.5 引入。

另请参阅 stop (), isActive (), QObject::timerEvent (),和 Qt::TimerType .

void QBasicTimer:: stop ()

停止计时器。

另请参阅 start () 和 isActive ().

[noexcept] void QBasicTimer:: swap ( QBasicTimer & other )

Swaps the timer other with this timer. This operation is very fast and never fails.

[noexcept] int QBasicTimer:: timerId () const

返回计时器 ID。

另请参阅 QTimerEvent::timerId ().

[noexcept] QBasicTimer &QBasicTimer:: operator= ( QBasicTimer && other )

移动赋值 other 到此基本计时器。停止先前由此基本计时器表示的计时器。 other 保持按 inactive .

另请参阅 stop (), isActive (),和 swap ().

相关非成员

[noexcept] void swap ( QBasicTimer & lhs , QBasicTimer & rhs )

Swaps the timer lhs with rhs 。此操作非常快且从不失败。