Spec-Zone.ru › Qt 5.14

Класс QWinEventNotifier

Класс QWinEventNotifier предоставляет поддержку функций ожидания Windows. Подробнее...

Заголовок: #include <QWinEventNotifier>
qmake: QT += core
С момента: Qt 5.0
Наследует: QObject

Этот класс был представлен в Qt 5.0.

  • Список всех членов, включая наследуемые члены

Открытые функции

QWinEventNotifier(QWinEventNotifier::HANDLE hEvent, QObject *parent = nullptr)
QWinEventNotifier(QObject *parent = nullptr)
virtual ~QWinEventNotifier()
QWinEventNotifier::HANDLE handle() const
bool isEnabled() const
void setHandle(QWinEventNotifier::HANDLE hEvent)

Открытые слоты

void setEnabled(bool enable)

Сигналы

void activated(QWinEventNotifier::HANDLE hEvent)

Переопределенные защищенные функции

virtual bool event(QEvent *e) override

Подробное описание

Класс QWinEventNotifier позволяет использовать функции ожидания в Windows асинхронно. С помощью этого класса вы можете зарегистрировать HANDLE события и получить уведомление, когда это событие станет сигнализированным. Состояние события не изменяется в процессе, поэтому если это событие с ручным сбросом, вам необходимо сбросить его после уведомления.

После создания объекта события с помощью API Windows, такого как CreateEvent() или OpenEvent(), вы можете создать нотификатор события для мониторинга дескриптора события. Если нотификатор события включен, он будет излучать сигнал activated() всякий раз, когда соответствующий объект события сигнализируется.

Функция setEnabled() позволяет отключить и включить нотификатор события. В общем, рекомендуется явно включать или отключать нотификатор события. Отключенный нотификатор ничего не делает при сигнализации объекта события (тот же эффект, что и при несоздании нотификатора события). Используйте функцию isEnabled(), чтобы определить текущее состояние нотификатора.

Наконец, вы можете использовать функцию setHandle() для регистрации нового объекта события и функцию handle() для получения дескриптора события.

Дополнительная информация: Хотя класс называется QWinEventNotifier, он может использоваться для некоторых других объектов, которые являются так называемыми синхронизационными объектами, такими как процессы, потоки, таймеры с ожиданием.

Предупреждение: Этот класс доступен только в Windows.

Документация по функциям-членам

QWinEventNotifier::QWinEventNotifier(QWinEventNotifier::HANDLE hEvent, QObject *parent = nullptr)

Создаёт нотификатор события с заданным parent. Он включает нотификатор и следит за событием hEvent.

Нотификатор включён по умолчанию, т. е. он излучает сигнал activated() всякий раз, когда соответствующее событие сигнализируется. Однако в общем случае рекомендуется явно включать или отключать нотификатор события.

См. также setEnabled() и isEnabled().

QWinEventNotifier::QWinEventNotifier(QObject *parent = nullptr)

Создаёт нотификатор события с заданным parent.

[signal] void QWinEventNotifier::activated(QWinEventNotifier::HANDLE hEvent)

Этот сигнал излучается всякий раз, когда нотификатор события включён и соответствующий HANDLE сигнализируется.

Состояние события не изменяется в процессе, поэтому, если это событие с ручным сбросом, вам необходимо сбросить его после уведомления.

Объект передаётся в параметре hEvent.

Примечание: Это частный сигнал. Он может использоваться в подключениях сигналов, но не может излучаться пользователем.

См. также handle().

[slot] void QWinEventNotifier::setEnabled(bool enable)

Если enable равно true, нотификатор включён; в противном случае нотификатор выключен.

См. также isEnabled() и activated().

[virtual] QWinEventNotifier::~QWinEventNotifier()

Уничтожает этот нотификатор.

[override virtual protected] bool QWinEventNotifier::event(QEvent *e)

Реализует: QObject::event(QEvent *e).

QWinEventNotifier::HANDLE QWinEventNotifier::handle() const

Возвращает HANDLE, который был зарегистрирован в нотификаторе.

См. также setHandle().

bool QWinEventNotifier::isEnabled() const

Возвращает true, если нотификатор включён; в противном случае возвращает false.

См. также setEnabled().

void QWinEventNotifier::setHandle(QWinEventNotifier::HANDLE hEvent)

Регистрирует HANDLE hEvent. Старый HANDLE будет автоматически дезактивирован.

Примечание: Нотификатор будет отключён в качестве побочного эффекта и должен быть повторно включён.

См. также handle() и setEnabled().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qwineventnotifier.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API