Класс QTouchDevice
Класс QTouchDevice описывает устройство, из которого происходят события касания. Подробнее...
| Заголовок: | #include <QTouchDevice> |
| qmake: | QT += gui |
| С тех пор: | Qt 5.0 |
Этот класс был представлен в Qt 5.0.
Типы публичного доступа
| флаги | Возможности |
| перечисление | CapabilityFlag { Позиция, Область, Давление, Скорость, НеобработанныеПозиции, ..., МоделированиеМыши } |
| перечисление | ТипУстройства { СенсорныйЭкран, СенсорнаяПоверхность } |
Публичные функции
| QTouchDevice() | |
| ~QTouchDevice() | |
| QTouchDevice::Возможности | возможности() const |
| int | максимальноеКоличествоТочекКасания() const |
| QString | имя() const |
| void | установитьВозможности(QTouchDevice::Возможности caps) |
| void | установитьМаксимальноеКоличествоТочекКасания(int max) |
| void | установитьИмя(const QString &name) |
| void | установитьТип(QTouchDevice::ТипУстройства devType) |
| QTouchDevice::ТипУстройства | тип() const |
Статические публичные члены
| QList<const QTouchDevice *> | устройства() |
Подробное описание
Каждый QTouchEvent содержит указатель QTouchDevice, позволяющий получить доступ к свойствам устройства, таким как тип и возможности. Платформа или плагины должны зарегистрировать доступные устройства касания через QWindowSystemInterface перед генерацией любых событий касания. Приложениям не нужно создавать экземпляры этого класса; они должны получать доступ к глобальным экземплярам, на которые указывает QTouchEvent::device().
Документация по типам членов
перечисление QTouchDevice::CapabilityFlagтипы QTouchDevice::Возможности
Это перечисление используется с QTouchDevice::возможности(), чтобы указать, какой тип информации может предоставить устройство касания или его драйвер.
| Постоянная | Значение | Описание |
|---|---|---|
QTouchDevice::Position |
0x0001 |
Указывает, что доступна информация о позиции, означающая, что функции pos() в точках касания возвращают допустимые точки. |
QTouchDevice::Area |
0x0002 |
Указывает, что доступна информация об области касания, означающая, что функции rect() в точках касания возвращают допустимые прямоугольники. |
QTouchDevice::Pressure |
0x0004 |
Указывает, что доступна информация о давлении, означающая, что давление() возвращает допустимое значение. |
QTouchDevice::Velocity |
0x0008 |
Указывает, что доступна информация о скорости, означающая, что скорость() возвращает допустимый вектор. |
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::возможности() const
Возвращает возможности устройства касания.
См. также установитьВозможности().
[static] QList<const QTouchDevice *> QTouchDevice::устройства()
Возвращает список всех зарегистрированных устройств.
Примечание: Возвращаемый список нельзя использовать для добавления новых устройств. Для добавления имитированного сенсорного экрана для автотестирования можно использовать QTest::createTouchDevice(). Для добавления реальных сенсорных экранов в плагины QPA можно использовать закрытую функцию QWindowSystemInterface::registerTouchDevice().
int QTouchDevice::максимальноеКоличествоТочекКасания() const
Возвращает максимальное количество одновременных точек касания (пальцев), которые могут быть обнаружены.
Эта функция была представлена в Qt 5.2.
См. также установитьМаксимальноеКоличествоТочекКасания().
QString QTouchDevice::имя() const
Возвращает имя устройства касания.
Эта строка часто может быть пустой. Однако она полезна для систем, имеющих более одного устройства ввода касания, так как её можно использовать для различения устройств (например, чтобы определить, из какого устройства происходит QTouchEvent).
См. также установитьИмя().
void QTouchDevice::установитьВозможности(QTouchDevice::Возможности caps)
Устанавливает возможности caps, поддерживаемые устройством и его драйвером.
См. также возможности().
void QTouchDevice::установитьМаксимальноеКоличествоТочекКасания(int max)
Устанавливает максимальное количество одновременных точек касания max, поддерживаемых устройством и его драйвером.
См. также максимальноеКоличествоТочекКасания().
void QTouchDevice::установитьИмя(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.15/qtouchdevice.html