Класс QTouchDevice
Класс QTouchDevice описывает устройство, с которого происходят события касания. Подробнее...
| Заголовок: | #include <QTouchDevice> |
| qmake: | QT += gui |
| С тех пор: | Qt 5.0 |
Этот класс был представлен в Qt 5.0.
Типы public
| флаги | Возможности |
| перечисление | CapabilityFlag { Положение, Область, Давление, Скорость, СырыеПозиции, …, ЭмуляцияМыши } |
| перечисление | ТипУстройства { СенсорныйЭкран, СенсорнаяПоверхность } |
Функции public
| QTouchDevice() | |
| ~QTouchDevice() | |
| QTouchDevice::Возможности | capabilities() const |
| int | maximumTouchPoints() const |
| QString | name() const |
| void | setCapabilities(QTouchDevice::Возможности caps) |
| void | setMaximumTouchPoints(int max) |
| void | setName(const QString &name) |
| void | setType(QTouchDevice::ТипУстройства devType) |
| QTouchDevice::ТипУстройства | type() const |
Статические public члены
| QList<const QTouchDevice *> | devices() |
Подробное описание
Каждый QTouchEvent содержит указатель QTouchDevice, чтобы предоставить доступ к свойствам устройства, таким как тип и возможности. Ответственность за регистрацию доступных устройств касания через QWindowSystemInterface ложится на платформу или общие плагины до генерации любых событий касания. Приложениям не нужно создавать экземпляры этого класса, они должны просто получать доступ к глобальным экземплярам, на которые указывает QTouchEvent::device().
Документация по типам членов
перечисление QTouchDevice::CapabilityFlagфлаги QTouchDevice::Возможности
Это перечисление используется с QTouchDevice::capabilities() для указания того, какой тип информации может предоставить устройство касания или его драйвер.
| Константа | Значение | Описание |
|---|---|---|
QTouchDevice::Position |
0x0001 |
Указывает, что информация о положении доступна, что означает, что функции pos() в точках касания возвращают допустимые точки. |
QTouchDevice::Area |
0x0002 |
Указывает, что информация об области касания доступна, что означает, что функции rect() в точках касания возвращают допустимые прямоугольники. |
QTouchDevice::Pressure |
0x0004 |
Указывает, что информация о давлении доступна, что означает, что pressure() возвращает допустимое значение. |
QTouchDevice::Velocity |
0x0008 |
Указывает, что информация о скорости доступна, что означает, что velocity() возвращает допустимый вектор. |
QTouchDevice::RawPositions |
0x0010 |
Указывает, что список, возвращаемый QTouchEvent::TouchPoint::rawScreenPositions(), может содержать одну или несколько позиций для каждой точки касания. Это актуально, когда ввод касания фильтруется или исправляется на уровне драйвера. |
QTouchDevice::NormalizedPosition |
0x0020 |
Указывает, что нормализованная позиция доступна, что означает, что normalizedPos() возвращает допустимое значение. |
QTouchDevice::MouseEmulation |
0x0040 |
Указывает, что устройство синтезирует события мыши. Это значение перечисления было введено в Qt 5.5. |
Тип Возможности является псевдонимом для QFlags<CapabilityFlag>. Он хранит сочетание значений CapabilityFlag по оператору ИЛИ.
перечисление QTouchDevice::ТипУстройства
Это перечисление представляет тип устройства, которое сгенерировало QTouchEvent.
| Константа | Значение | Описание |
|---|---|---|
QTouchDevice::TouchScreen |
0 |
В этом типе устройства сенсорная поверхность и дисплей объединены. Это означает, что поверхность и дисплей, как правило, имеют одинаковый размер, так что существует прямая связь между физическими позициями точек касания и координатами, отдаваемыми QTouchEvent::TouchPoint. В результате Qt позволяет пользователю взаимодействовать сразу с несколькими QWidgets и QGraphicsItems. |
QTouchDevice::TouchPad |
1 |
В этом типе устройства сенсорная поверхность отделена от дисплея. Нет прямой связи между физическим местоположением касания и координатами на экране. Вместо этого они рассчитываются относительно текущей позиции мыши, и пользователь должен использовать сенсорную панель для перемещения этой точки отсчета. В отличие от сенсорных экранов, Qt позволяет пользователям взаимодействовать только с одним QWidget или QGraphicsItem одновременно. |
Документация по функциям членов
QTouchDevice::QTouchDevice()
Создает новый экземпляр устройства касания. По умолчанию имя пустое, единственная возможность — Положение, и тип — СенсорныйЭкран.
QTouchDevice::~QTouchDevice()
Удаляет экземпляр устройства касания.
QTouchDevice::Возможности QTouchDevice::capabilities() const
Возвращает возможности устройства касания.
См. также setCapabilities().
[static] QList<const QTouchDevice *> QTouchDevice::devices()
Возвращает список всех зарегистрированных устройств.
Примечание: Возвращаемый список не может использоваться для добавления новых устройств. Для добавления имитируемого сенсорного экрана для автотеста можно использовать QTest::createTouchDevice(). Для добавления реальных сенсорных экранов в плагины QPA можно использовать частную функцию QWindowSystemInterface::registerTouchDevice().
int QTouchDevice::maximumTouchPoints() const
Возвращает максимальное количество одновременных точек касания (пальцев), которые могут быть обнаружены.
Эта функция была представлена в Qt 5.2.
См. также setMaximumTouchPoints().
QString QTouchDevice::name() const
Возвращает имя устройства касания.
Эта строка часто может быть пустой. Однако она полезна для систем, имеющих более одного устройства ввода касания, так как она может использоваться для различения устройств (т.е. чтобы определить, с какого устройства исходит QTouchEvent).
См. также setName().
void QTouchDevice::setCapabilities(QTouchDevice::Возможности caps)
Устанавливает возможности caps, поддерживаемые устройством и его драйвером.
См. также capabilities().
void QTouchDevice::setMaximumTouchPoints(int max)
Устанавливает максимальное количество одновременных точек касания max, поддерживаемых устройством и его драйвером.
См. также maximumTouchPoints().
void QTouchDevice::setName(const QString &name)
Устанавливает имя (уникальный идентификатор) устройства. В большинстве систем достаточно оставить это значение неопределенным и сохранить пустое имя по умолчанию. Этот идентификатор становится важным при наличии нескольких сенсорных устройств и необходимости их различать.
См. также name().
void QTouchDevice::setType(QTouchDevice::DeviceType devType)
Устанавливает тип устройства devType.
См. также type().
QTouchDevice::DeviceType QTouchDevice::type() const
Возвращает тип сенсорного устройства.
См. также setType().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qtouchdevice.html