मैं स्क्रीन पर कहीं भी माउस क्लिक का पता लगाने के लिए pyhooks का उपयोग करने की कोशिश कर रहा हूँ। समस्या यह है कि मैं इसे केवल PumpMessages() के साथ काम करने के लिए प्राप्त कर सकता हूं। मैं इसे एक थोड़ी देर के लूप के अंदर संचालित करना चाहता हूं जिसे मैंने बनाया है। क्या इसे पूरा करने का कोई तरीका है/इसे पंप मैसेज की आवश्यकता क्यों है?पंप मैसेज() के बजाय pyhook के साथ मैं अपने लूप का उपयोग कैसे करूं?
def onclick(event):
print 'Mouse click!'
return True
hm = pyHook.HookManager()
hm.MouseLeftDown = onclick
hm.HookMouse()
pythoncom.PumpMessages()
hm.UnhookMouse()
उपरोक्त एकमात्र तरीका है जिसे मैं इसे चलाने के लिए प्राप्त कर सकता हूं। मैं एक स्मार्ट आदमी नहीं हूँ:
मैं कुछ इस तरह पूरा करने के लिए कोशिश कर रहा हूँ:
sTime = time.time()
def onclick(event):
global sTime
print 'Time between clicks equals: %i' % time.time() - stime
sTime = time.time()
return True
hm.MouseLeftDown = OnClick
while True:
hm.HookMouse()
संपादित। परिदृश्य में थोड़ी देर के पाश की कोई आवश्यकता नहीं ..
साई ..
सही उत्तर है, और कुछ भी नहीं – Muppet
मपेट के साथ सहमत हैं। यह सही जवाब होना चाहिए। इस के लिए धन्यवाद, मैंने इस सरल समाधान को खोजने से पहले थोड़ी देर की खोज की, – SeanDav
लेकिन क्या यह सीपीयू को छेड़छाड़ नहीं कर रहा है क्योंकि यह गैर-अवरुद्ध है? –