Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
Проблема со Swipe в QT5 ...
-
Имею : Linux Mint 19.1 + QT 5.12.3 + Qt Creator 4.8.2 в связке с RPI3B+Сенсорный монитор MPI5009 !
Вопрос : Как заставить работать Swipe в Qt5 ?
Пример кода :
ModelsPanel::ModelsPanel(Ui::JCP _ui, QString _pathToModelsDir, QWidget* _parent) : QWidget(_parent), ui(_ui), pathToModelsDir(_pathToModelsDir) {
QDir dir(_pathToModelsDir);
QStringList nameFilter (".");
QFileInfoList list = dir.entryInfoList(nameFilter, QDir::Files);
QGridLayout* grid = new QGridLayout(this);setAttribute(Qt::WA_AcceptTouchEvents); grabGesture(Qt::SwipeGesture); if (!list.size()) { ........... код не имеющий отнощения к swipe ................ setLayout(grid); _ui->modelsGroup->setWidget(this);
};
bool ModelsPanel::event(QEvent event) {
qDebug() << event->type();
if (event->type() == QEvent::Gesture)
return gestureEvent(static_cast<QGestureEvent>(event));
return QWidget::event(event);
};bool ModelsPanel::gestureEvent(QGestureEvent *event) {
if (QGesture *swipe = event->gesture(Qt::SwipeGesture))
swipeTriggered(static_cast<QSwipeGesture *>(swipe));
return true;
}void ModelsPanel::swipeTriggered(QSwipeGesture *gesture) {
............. код метода до обработки которого дело не доходит ................... update();
}*
Не понимаю где моя ошибка но перегруженная ModelsPanel::event(QEvent *event) не получает события связанные со Swipe !
С уважением, Юрий.