आईट्यून्स मिनी-प्लेयर (केवल एक उदाहरण देने के लिए) क्लिक-थ्रू का समर्थन नहीं करता है जहां प्ले/पॉज़ और वॉल्यूम कंट्रोल का उपयोग होने पर एप्लिकेशन को सामने नहीं लाया जाता है।क्लिक-थ्रू बटन और विंडो
यह कैसे किया जाता है?
मैं एप्पल के प्रलेखन के माध्यम से देख रहा था और Cocoa Event-Handling Guide, Event Dispatch में यह कहा गया, एक छोटे से पर जाने के लिए है:
कुछ घटनाओं, जिनमें से कई आवेदन किट (प्रकार NSAppKitDefined) द्वारा परिभाषित कर रहे हैं, के लिए है खिड़की या एप्लिकेशन ऑब्जेक्ट द्वारा नियंत्रित कार्यों के साथ करें। इन घटनाओं के उदाहरण सक्रिय, निष्क्रिय करने, छिपाने और एप्लिकेशन दिखाने से संबंधित हैं। एनएसएपीपी इन घटनाओं को अपने प्रेषण दिनचर्या में जल्दी से फ़िल्टर करता है और उन्हें स्वयं ही संभालता है।
तो, मेरी समझ सीमित (How an Event Enters a Cocoa, Application) उपवर्गीकरण NSApplication और अधिभावी - (void)sendEvent:(NSEvent *)theEvent
चाहिए जाल हर माउस और कीबोर्ड घटना है, लेकिन अभी से, खिड़की क्लिक पर उठाया जाता है। इसलिए एनएसएप्लिकेशंस द्वारा घटना को देखा जाने से पहले खिड़की उठाई जाती है या मुझे कुछ और याद आ रहा है।
मै मैट गैलाघर के Demystifying NSApplication by recreating it पर देखा है, दुर्भाग्य से मैट ने घटना कतार को कवर नहीं किया है, इसलिए इसके अलावा, मैं स्टंप हो गया हूं।
किसी भी मदद की सराहना की जाएगी, धन्यवाद।
संपादित जोड़ने के लिए:Lloyd's Lounge पर मिले एक पोस्ट जिसमें उन्होंने CocoaBuilder, capture first right mouse down पर एक पोस्ट करने के लिए एक ही समस्या और लिंक के बारे में बात करती है। मैं वर्तमान में वहां दिए गए कोड को आजमा रहा हूं, कुछ घूमने के बाद और [theEvent प्रकार] के लिए एनएसएलओजी को पुनः सक्रिय करने के बाद, बाईं माउस बटन गतिविधि पकड़ी जा रही है।
अब, इसे आगे लाने के लिए विंडो पर बाईं ओर क्लिक करने से ईवेंट प्रकारों का अनुक्रम उत्पन्न होता है, 13, 1, 13
, ये एनएसएपीपीकिट डिफिनेटेड, एनएसएलफ्टफॉउसडाउन और एनएसएपीपीकिट फिर से परिभाषित हैं। क्या मैं इन्हें फ़िल्टर कर सकता हूं या कहां जा रहा हूं?
स्वीकार करता है फर्स्टमाउस: और स्वीकार करता है फर्स्ट रेस्पॉन्डर: इसका कोई प्रभाव नहीं है, यह इस समस्या पर मेरा पहला प्रयास था (और मुझे ध्यान दिया जाना चाहिए)। हालांकि धन्यवाद। –