如何检测用户在Qt QMainWindow中的不活动?我的想法到目前为止是有一个QTimer递增计数器,如果通过一个特定的值,锁定应用程序。任何鼠标或键交互都应该将定时器设置回0.但是我需要知道如何正确处理重置的输入事件;我可以重新实现:如何检测用户在Qt中的不活动?
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在这些控件中发生的事件?是否有更好的架构来检测用户活动?
很好,谢谢。我最终发出了一个带有obj参数的信号,其中有“resetMyTimer”,并且每个窗口都将信号附加到其复位计时器插槽,该插槽检查*窗口上的窗口小部件是否生成事件,以便每个窗口独立锁定的其他人。 – 2010-07-28 03:21:43
如果没有任何子部件处理所述事件,则该事件似乎只发送给eventFilter()。有没有办法确保所有事件在进行其他处理之前都会转到此过滤器? – KyleL 2014-09-24 16:17:04