Как я могу обнаружить пользовательскую неактивность в QT QMainWindow? Моя идея до сих пор состоит в том, чтобы иметь QTimer, который увеличивает счетчик, который, если определенное значение передается, блокирует приложение. Любая мышь или ключевое взаимодействие должны задержать таймер к 0. Однако я должен знать, как правильно обработать входные события, которые сбрасывают; я могу повторно реализовать:
virtual void keyPressEvent(QKeyEvent *event)
virtual void keyReleaseEvent(QKeyEvent *event)
virtual void mouseDoubleClickEvent(QMouseEvent *event)
virtual void mouseMoveEvent(QMouseEvent *event)
virtual void mousePressEvent(QMouseEvent *event)
virtual void mouseReleaseEvent(QMouseEvent *event)
... но не будут обработчики событий всех виджетов в QMainWindow предотвращать события, происходящие в тех средствах управления от достижения QMainWindow? Существует ли лучшая архитектура для обнаружения пользовательского действия, как это?