如何檢測用戶在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