Класс QBasicTimer
Класс QBasicTimer предоставляет события таймера для объектов. Подробнее...
| Заголовок: | #include <QBasicTimer> |
| CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
Открытые функции
| QBasicTimer(QBasicTimer &&other) | |
| QBasicTimer() | |
| QBasicTimer & | operator=(QBasicTimer &&other) |
| ~QBasicTimer() | |
| bool | isActive() const |
| void | start(int msec, QObject *object) |
| void | start(int msec, Qt::TimerType timerType, QObject *obj) |
| void | stop() |
| void | swap(QBasicTimer &other) |
| int | timerId() const |
Подробное описание
Это быстрый, легкий и низкоуровневый класс, используемый Qt внутри. Мы рекомендуем использовать более высокоуровневый класс QTimer, а не этот класс, если вы хотите использовать таймеры в своих приложениях. Обратите внимание, что этот таймер является повторяющимся таймером, который будет отправлять последующие события таймера, если не будет вызвана функция stop().
Чтобы использовать этот класс, создайте QBasicTimer и вызовите его функцию start() с интервалом таймаута и указателем на подкласс QObject. Когда таймер истекает, он отправляет событие таймера подклассу QObject. Таймер можно остановить в любое время, используя stop(). isActive() возвращает true для таймера, который работает; то есть он был запущен, не достиг времени таймаута и не был остановлен. Идентификатор таймера можно получить, используя timerId().
Объекты этого класса не могут быть скопированы, но могут быть перемещены, поэтому вы можете поддерживать список основных таймеров, храня их в контейнере, который поддерживает только перемещаемые типы, например, std::vector.
Пример Wiggly использует QBasicTimer для перерисовки виджета с регулярными интервалами.
См. также QTimer, QTimerEvent, QObject::timerEvent(), Таймеры и Пример Wiggly.
Документация по функциям-членам
void QBasicTimer::swap(QBasicTimer &other)
Меняет местами строку other с этой строкой или lhs с rhs. Эта операция очень быстрая и никогда не терпит неудачу.
Эта функция была добавлена в Qt 5.14.
[since 5.14] QBasicTimer::QBasicTimer(QBasicTimer &&other)
Перемещающее создание таймера из other, который остается неактивным.
Эта функция была добавлена в Qt 5.14.
См. также isActive() и swap().
QBasicTimer::QBasicTimer()
Создаёт таймер.
См. также start().
[since 5.14] QBasicTimer &QBasicTimer::operator=(QBasicTimer &&other)
Перемещающее присваивание other этому таймеру. Таймер, ранее представленный этим таймером, останавливается. other остается неактивным.
Эта функция была добавлена в Qt 5.14.
См. также stop(), isActive() и swap().
QBasicTimer::~QBasicTimer()
Уничтожает таймер.
bool QBasicTimer::isActive() const
Возвращает true если таймер работает и не был остановлен; в противном случае возвращает false.
void QBasicTimer::start(int msec, QObject *object)
Запускает (или перезапускает) таймер с таймаутом msec миллисекунд. Таймер будет Qt::CoarseTimer. См. Qt::TimerType для получения информации о разных типах таймеров.
Указанный object получит события таймера.
См. также stop(), isActive(), QObject::timerEvent() и Qt::CoarseTimer.
void QBasicTimer::start(int msec, Qt::TimerType timerType, QObject *obj)
Это перегруженная функция.
Запускает (или перезапускает) таймер с таймаутом msec миллисекунд и указанным timerType. См. Qt::TimerType для получения информации о разных типах таймеров.
obj получит события таймера.
См. также stop(), isActive(), QObject::timerEvent() и Qt::TimerType.
void QBasicTimer::stop()
Останавливает таймер.
См. также start() и isActive().
int QBasicTimer::timerId() const
Возвращает идентификатор таймера.
См. также QTimerEvent::timerId().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qbasictimer.html