मैं क्यूटी 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 के पहुंचने से उन नियंत्रणों में होने वाली घटनाओं को रोकने नहीं होगा? क्या उपयोगकर्ता गतिविधि का पता लगाने के लिए एक बेहतर आर्किटेक्चर है?
बहुत अच्छा काम करता है, धन्यवाद। मैंने obj पैरामीटर के साथ एक सिग्नल उत्सर्जित कर दिया जहां आपके पास "resetMyTimer" है, और प्रत्येक विंडो सिग्नल को अपने रीसेट टाइमर स्लॉट से संलग्न करती है, जो यह देखने के लिए जांचती है कि * उस * विंडो पर एक विजेट ने घटना उत्पन्न की है ताकि प्रत्येक विंडो स्वतंत्र रूप से ताले हो दूसरों के। –
इवेंट केवल इवेंटफिल्टर() को भेजा जाता है यदि बच्चे के किसी भी विजेट ने ईवेंट को संभाला नहीं है। क्या यह सुनिश्चित करने का कोई तरीका है कि सभी घटनाएं कहीं और संसाधित होने से पहले इस फ़िल्टर पर जाएं? – KyleL