Класс QTouchEventSequence
класс QTest::QTouchEventSequenceКласс QTouchEventSequence используется для имитации последовательности событий касания. Подробнее...
| Заголовок: | #include <QTouchEventSequence> |
| qmake: | QT += testlib |
| С момента: | Qt 4.6 |
Этот класс был введён в Qt 4.6.
Открытые функции
| ~QTouchEventSequence() | |
| void | commit(bool processEvents = true) |
| QTest::QTouchEventSequence & | move(int touchId, const QPoint &pt, QWindow *window = nullptr) |
| QTest::QTouchEventSequence & | move(int touchId, const QPoint &pt, QWidget *widget = nullptr) |
| QTest::QTouchEventSequence & | press(int touchId, const QPoint &pt, QWindow *window = nullptr) |
| QTest::QTouchEventSequence & | press(int touchId, const QPoint &pt, QWidget *widget = nullptr) |
| QTest::QTouchEventSequence & | release(int touchId, const QPoint &pt, QWindow *window = nullptr) |
| QTest::QTouchEventSequence & | release(int touchId, const QPoint &pt, QWidget *widget = nullptr) |
| QTest::QTouchEventSequence & | stationary(int touchId) |
Подробное описание
Для имитации последовательности событий касания на определённом устройстве для окна или виджета, вызовите QTest::touchEvent для создания экземпляра QTouchEventSequence. Добавьте события касания в последовательность, вызвав press(), move(), release() и stationary(), и позвольте экземпляру выйти из области видимости, чтобы выполнить последовательность в системе событий.
Пример:
QTouchDevice *dev = QTest::createTouchDevice();
QWidget widget;
QTest::touchEvent(&widget, dev)
.press(0, QPoint(10, 10));
QTest::touchEvent(&widget, dev)
.stationary(0)
.press(1, QPoint(40, 10));
QTest::touchEvent(&widget, dev)
.move(0, QPoint(12, 12))
.move(1, QPoint(45, 5));
QTest::touchEvent(&widget, dev)
.release(0, QPoint(12, 12))
.release(1, QPoint(45, 5)); Документация по членам-функциям
QTouchEventSequence::~QTouchEventSequence()
Выполняет эту последовательность событий касания, если autoCommit был отключён, и освобождает выделенные ресурсы.
void QTouchEventSequence::commit(bool processEvents = true)
Выполняет эту последовательность событий касания в системе событий. Обычно нет необходимости вызывать эту функцию, поскольку она вызывается из деструктора. Однако, если autoCommit отключён, события выполняются только при явном вызове этой функции.
В особых случаях тесты могут захотеть отключить обработку событий. Это можно сделать, установив processEvents в false. Это приводит к простому очередированию событий; цикл событий не будет вынужден их обрабатывать.
QTest::QTouchEventSequence &QTouchEventSequence::move(int touchId, const QPoint &pt, QWindow *window = nullptr)
Добавляет событие перемещения для точки касания touchId в позиции pt в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Позиция pt интерпретируется как относительная к window. Если window — нулевой указатель, тогда pt интерпретируется как относительная к окну, предоставленному при создании этого QTouchEventSequence.
Имитирует перемещение пальца, идентифицированного по touchId.
Эта функция была введена в Qt 5.0.
QTest::QTouchEventSequence &QTouchEventSequence::move(int touchId, const QPoint &pt, QWidget *widget = nullptr)
Добавляет событие перемещения для точки касания touchId в позиции pt в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Позиция pt интерпретируется как относительная к widget. Если widget — нулевой указатель, тогда pt интерпретируется как относительная к виджету, предоставленному при создании этого QTouchEventSequence.
Имитирует перемещение пальца, идентифицированного по touchId.
QTest::QTouchEventSequence &QTouchEventSequence::press(int touchId, const QPoint &pt, QWindow *window = nullptr)
Добавляет событие нажатия для точки касания touchId в позиции pt в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Позиция pt интерпретируется как относительная к window. Если window — нулевой указатель, тогда pt интерпретируется как относительная к окну, предоставленному при создании этого QTouchEventSequence.
Имитирует нажатие на сенсорный экран или тачпад пальцем, идентифицированным по touchId.
Эта функция была введена в Qt 5.0.
QTest::QTouchEventSequence &QTouchEventSequence::press(int touchId, const QPoint &pt, QWidget *widget = nullptr)
Добавляет событие нажатия для точки касания touchId в позиции pt в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Позиция pt интерпретируется как относительная к widget. Если widget — нулевой указатель, тогда pt интерпретируется как относительная к виджету, предоставленному при создании этого QTouchEventSequence.
Имитирует нажатие на сенсорный экран или тачпад пальцем, идентифицированным по touchId.
QTest::QTouchEventSequence &QTouchEventSequence::release(int touchId, const QPoint &pt, QWindow *window = nullptr)
Добавляет событие отпуска для точки касания touchId в позиции pt в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Позиция pt интерпретируется как относительная к window. Если window — нулевой указатель, тогда pt интерпретируется как относительная к окну, предоставленному при создании этого QTouchEventSequence.
Имитирует отпускание пальца, идентифицированного по touchId.
Эта функция была введена в Qt 5.0.
QTest::QTouchEventSequence &QTouchEventSequence::release(int touchId, const QPoint &pt, QWidget *widget = nullptr)
Добавляет событие отпуска для точки касания touchId в позиции pt в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Позиция pt интерпретируется как относительная к widget. Если widget — нулевой указатель, тогда pt интерпретируется как относительная к виджету, предоставленному при создании этого QTouchEventSequence.
Имитирует отпускание пальца, идентифицированного по touchId.
QTest::QTouchEventSequence &QTouchEventSequence::stationary(int touchId)
Добавляет событие неподвижности для точки касания touchId в эту последовательность и возвращает ссылку на этот QTouchEventSequence.
Имитирует, что палец, идентифицированный по touchId, не двигался.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qtest-qtoucheventsequence.html