QBasicTimer 类
QBasicTimer 类提供了对象的事件计时功能。 更多...
头文件 | #include <QBasicTimer> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake | QT += core |
- 所有成员列表,包括继承的成员
- 已废弃的成员
- QBasicTimer 是 事件类 的一部分。
公共函数
QBasicTimer() | |
QBasicTimer(QBasicTimer &&other) | |
~QBasicTimer() | |
bool | isActive() const |
(since 6.5) void | start(std::chrono::milliseconds duration, QObject *object) |
(since 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() 函数,否则会发送后续的定时器事件。
要使用这个类,创建一个 QBasicTimer,并使用超时时间和指向 QObject 子类的指针调用其 start() 函数。定时器超时后,它将向 QObject 子类发送定时器事件。可以使用 stop() 在任何时候停止定时器。 isActive() 返回 true
对于正在运行的定时器;即它已被启动,尚未达到超时时间,且未被停止。可以使用 timerId() 检索定时器的 ID。
此类的对象不能被复制,但可以移动,因此可以通过在支持移动类型(如 std::vector)的容器中持有它们,来维护基本定时器列表。
另请参阅QTimer,QTimerEvent,QObject::timerEvent(),定时器 和 仿射变换。
成员函数文档
[constexpr noexcept]
QBasicTimer::QBasicTimer()
构建基本定时器。
另请参阅 start().
[noexcept]
QBasicTimer::QBasicTimer(QBasicTimer &&other)
从 other 移构造一个基本定时器,其中 other 被闲置。
[noexcept]
QBasicTimer::~QBasicTimer()
销毁基本定时器。
[noexcept]
bool QBasicTimer::isActive() const
如果定时器正在运行且未被停止,则返回 true
;否则返回 false
。
[since 6.5]
void QBasicTimer::start(std::chrono::milliseconds duration, QObject *object)
使用 duration 超时启动(或重新启动)定时器。定时器将是一个 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 超时和给定的 timerType 启动(或重新启动)定时器。有关不同定时器类型的信息,请参阅 Qt::TimerType。
obj 将接收定时器事件。
此函数自 Qt 6.5 开始提供。
另请参阅 stop(),isActive(),QObject::timerEvent() 以及 Qt::TimerType。
void QBasicTimer::stop()
停止定时器。
[noexcept]
void QBasicTimer::swap(QBasicTimer &other)
交换定时器 other 与此定时器。此操作非常快速且从不失败。
[noexcept]
int QBasicTimer::timerId() const
返回定时器的 ID。
另请参阅 QTimerEvent::timerId().
[noexcept]
QBasicTimer &QBasicTimer::operator=(QBasicTimer &&other)
将 other 移赋给此基本定时器。之前由此基本定时器表示的定时器已停止。 other 被设置为 闲置 状态。
© 2024 The Qt Company Ltd. 本文档中的贡献均属于其各自的拥有者。提供的文档依据自由软件基金会发布的 GNU 通用文档许可协议版本 1.3 的条款许可。Qt 及其相关标志是 The Qt Company Ltd. 在芬兰和/或世界其他国家的 商标。所有其他商标均为其各自拥有者的财产。