如何在 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 吗?是否有更好的架构来检测用户活动?