मैं सभी सूचनाओं की समझ बनाने की कोशिश कर रहा हूं और मैं हार गया हूं। मैंने डेल्फी (पास्कल), सी, सी ++, जावा को देखा है ... कुछ भी स्पष्ट नहीं है। एक महीने के बाद, यह समस्या है क्योंकि मैं इसे देखता हूं। मैं पूरी तरह से ट्रैक हो सकता हूं, इसलिए कृपया मुझे बताएं ... विनम्रता से, कृपया।
एक घटना प्रेषक, एक पकड़ने वाला जब तक प्रेषक पकड़ने का पंजीकरण करता है। मेरे पास 4 डायलॉग बॉक्स हैं जिन्हें हर बार एक फाइल (जिसका हैंडलिंग कोड 4 डायलॉग बॉक्स की तुलना में किसी अन्य मॉड्यूल में है) को अपडेट करने की आवश्यकता है। मैंने प्रत्येक पुराने तरीके से अपडेट करने पर विचार किया, लेकिन फिर मैंने डेल्फी इवेंट्स और मैसेज हैंडलिंग को देखा। चलो देखते हैं:
फ़ाइल एफ (प्रेषक) पढ़ना समाप्त हो गया है और डायलॉग्स 1..4 को इस तथ्य को सूचित करना चाहिए कि अब उनके पास प्रदर्शित करने के लिए और उपयोगकर्ता के साथ खेलने के लिए डेटा है। सबसे अच्छा क्या है?
श्रोताओं के रूप में डायलॉग १..४ को पंजीकृत करने का प्रयास करें और प्रेषक को किसी तरह एक OnUpdatedDataEvent ट्रिगर करें?
पूरे सिस्टम में एक संदेश भेजने की कोशिश करें, उम्मीद है कि डायलॉग 1..4 इसे पकड़ लेगा?
ध्यान दें कि ईवेंट मैसेजिंग करते समय चीजों को जोड़े रखता है ... और डिबग करने के लिए एक दर्द है।
और मुझे आश्चर्य है कि कोड का फ़ाइल ब्लॉक 4 श्रोताओं (संवाद बॉक्स) को कैसे पंजीकृत कर पाएगा?
मैं जो देख रहा हूं वह कैस्केड कॉलिंग की संभावना है, जिसका अर्थ है कि कॉलर एक श्रोता को कॉल करता है, जिसे अगला कॉल करता है ... जब तक यह श्रृंखला के अंत तक नहीं पहुंचता। मुझे आश्चर्य है कि अगर यह भी संभव है।
एक उदाहरण:
कहो फ़ाइल एफ भाषाओं की एक सूची है। अब, डायलॉगबॉक्स 1 सूची में कुछ करता है (उदाहरण के लिए एक नई भाषा जोड़ता है); वह कॉम्बो बॉक्स F फाइल को अपडेट करता है; यह बदले में एक DataUpdatedEvent चलाता है। 4 डायलॉग बॉक्स में, कहते हैं, TComboBoxes जो पॉप अप करते समय भाषा सूची प्रदर्शित करते हैं। मैं चाहता हूं कि 4 बॉक्स परिवर्तन को नोटिस करें और अपने स्वयं के कॉम्बो बॉक्स की सामग्री को ताज़ा अपडेट की गई फ़ाइल के साथ अपडेट करें ... बिना इस बात की चिंता किए कि कॉम्बो बॉक्स कैसे जानते हैं कि उन्हें अपनी सामग्री को ताज़ा करने की आवश्यकता है। यदि यह प्रेषित पैरामीटर के रूप में काम करता है तो प्रेषक पैरामीटर पार ले जाएगा और डेटाअप ट्रिगर करने वाले संवाद बॉक्स को बायपास किया जाएगा क्योंकि यह पहले से ही अपडेट किया जाएगा। आखिरकार अगर कोई प्रेषक = स्वयं तो अगले ईवेंट हैंडलर को लागू करना आसान होना चाहिए।
वह सब क्योंकि मैं अपने मस्तिष्क का उपयोग करना चाहता हूं ... अल्जाइमर को रोकने के लिए, बहुत सफलतापूर्वक मैं जोड़ नहीं सकता।