У меня есть два вопроса:Multitouch в Linux
- Как имитируют сенсорный событие в Linux.
- Как работать с мультитач на Qt в Linux.
У меня есть два вопроса:Multitouch в Linux
Вы можете имитировать события касания, позвонив по телефону qt_translateRawTouchEvent
. (Этот метод не документирован, но он находится в qapplication.cpp
и он экспортируется).
Вы хотите поставить это в верхней части файла:
// forward-declaration of Qt internal function
Q_GUI_EXPORT void qt_translateRawTouchEvent(QWidget *window,
QTouchEvent::DeviceType deviceType,
const QList<QTouchEvent::TouchPoint> &touchPoints);
Синтаксис вызов функции:
qt_translateRawTouchEvent(targetWidget, deviceType, points.values());
В вашем случае называют этот метод с (NULL, QTouchEvent::TouchScreen, touchPoints)
где touchPoints
ваш список которые в настоящее время затрагиваются пользователем. Это должно работать как минимум в Qt 4.7 и 4.8, возможно, раньше в Qt 5, но я этого не проверял.
Для вопроса мультитач вы, вероятно, хотите посмотреть на Gestures API, добавленный Qt.
Ок, но как я могу имитировать контакт в Linux? Мне нужно симулировать жест. –
@Alex Snet: Я не знаю, как имитировать событие касания. Когда вы задаете несколько вопросов, как это, вы должны ожидать, что некоторые люди могут знать только ответ на один из них. –