Я пишу приложение, которое получает данные от 3 мышей. 2 мыши используются для жестов, и их ввод обрабатывается отдельно, третьи должны работать как обычно.
Я успешно установил фильтр событий (см. Ниже), который выполняет мой собственный код обработки мыши ( processMouse () ).
Однако при попытке заставить фильтр игнорировать события от определенных мышей (определяемые логическим возвращаемым значением processMouse () ), ничто не игнорируется.
Я пытался использовать обычные возвращаемые значения true / false, сбрасывая событие в событие None, вызывая его функцию игнорирования, но мышь все еще продолжает двигаться, даже когда я говорю ей игнорировать событие.
bool MainWindow::eventFilter(QObject *obj, QEvent *event){
if ((event->type() == QEvent::MouseMove) ||
(event->type() == QEvent::MouseButtonPress)){
if (configured){
if (!processMouse()){
//event->ignore();
//event = new QEvent(QEvent::None);
}
}
return true;
}
return false;
}
Как можно выборочно игнорировать события MouseMove из фильтра событий?