Имитация / подделка щелчка мыши и колеса мыши с помощью Qt
Как имитировать / подделывать щелчок мыши и колесо мыши с помощью Qt? Чтобы быть более конкретным, я хочу щелкнуть внутри и вне приложения Qt. Заранее спасибо!
1 ответов
Если вы хотите имитировать клики по виджетам внутри ваше приложение, проверьте QTestEventList:
QTestEventList может быть заполнен событиями GUI, которые могут храниться как тестовые данные для последующего использования или воспроизводиться на любом QWidget.
Он позволяет выполнять нажатия клавиш и различные события мыши, но без колеса. Независимо от того, исходный код должен давать подсказки о лучших практиках для такого рода операция:
http://qt.gitorious.org/qt/qt/blobs/master/src/testlib/qtestmouse.h
http://qt.gitorious.org/qt/qt/blobs/master/src/testlib/qtestevent.h
OTOH, если вы хотите имитировать клики за пределами приложения (например, иконки на рабочем столе и т. д.) это, вероятно, выходит за рамки Qt API. Чтобы "взять полный контроль над мышью" в Windows, это связано вопрос:
имитация нажатия кнопки мыши в Windows
...вместо этого можно использовать инструмент автоматизации, специально предназначенный для этой задачи. Некоторые параметры являются Windows Авто!, для Mac автоматизатор, и веб-основе при посещении. Вы даже можете вызвать такой инструмент из Qt как чтения qprocess.