एक GUI में जावा इवेंट श्रोताओं प्रक्रिया उपयोगकर्ता गतिविधि

में एक घटना श्रोता जावा किसी प्रकार के ईवेंट को संसाधित करने के लिए डिज़ाइन किया गया है - यह किसी ईवेंट के लिए "सुनता है", जैसे कि उपयोगकर्ता का माउस क्लिक या एक कुंजी प्रेस, और फिर यह तदनुसार प्रतिक्रिया करता है। ईवेंट श्रोता को ईवेंट को परिभाषित करने वाली ईवेंट ऑब्जेक्ट से जोड़ा जाना चाहिए।

उदाहरण के लिए, चित्रमय घटक जैसे a JButton या JTextField के रूप में जाने जाते हैं घटना के स्रोत. इसका मतलब है कि वे घटनाओं को उत्पन्न कर सकते हैं (कहा जाता है घटना वस्तुओं), जैसे कि प्रदान करना JButton उपयोगकर्ता को क्लिक करने के लिए, या a JTextField जिसमें एक उपयोगकर्ता पाठ दर्ज कर सकता है। इवेंट श्रोता का काम उन घटनाओं को पकड़ना और उनके साथ कुछ करना है।

इवेंट श्रोता कैसे काम करते हैं

प्रत्येक ईवेंट श्रोता इंटरफ़ेस में समतुल्य ईवेंट स्रोत द्वारा उपयोग की जाने वाली कम से कम एक विधि शामिल होती है।

इस चर्चा के लिए, आइए एक माउस घटना पर विचार करें, यानी कभी भी कोई उपयोगकर्ता माउस के साथ कुछ क्लिक करता है, जिसे जावा वर्ग द्वारा दर्शाया गया है MouseEvent. इस प्रकार की घटना को संभालने के लिए, आप सबसे पहले एक निर्माण करेंगे

instagram viewer
MouseListener वह वर्ग जो जावा को लागू करता है MouseListener इंटरफेस। इस इंटरफ़ेस में पाँच विधियाँ हैं; उस एक को लागू करें जो माउस क्रिया के प्रकार से संबंधित है जिसे आप अपने उपयोगकर्ता को लेने का अनुमान लगाते हैं। य़े हैं:

  • शून्य माउसक्लाइड (माउस ईवेंट ई)

    जब एक घटक पर माउस बटन क्लिक किया गया है (दबाया और जारी किया गया है)।
  • शून्य माउसइन्नड (माउस ईवेंट)

    जब माउस किसी घटक में प्रवेश करता है, तब इसे आमंत्रित किया जाता है।
  • शून्य माउस (माउस ई)

    जब माउस एक घटक से बाहर निकलता है।
  • शून्य माउस माउस (माउस ई)

    जब एक माउस बटन को किसी घटक पर दबाया गया हो, तो उसे आमंत्रित किया गया।
  • शून्य माउसरेल्ड (माउसईवेंट ई)

    जब एक माउस बटन को किसी घटक पर छोड़ा गया हो, तो उसे आमंत्रित किया गया

जैसा कि आप देख सकते हैं, प्रत्येक विधि में एक एकल ईवेंट ऑब्जेक्ट पैरामीटर है: विशेष माउस ईवेंट जिसे इसे संभालने के लिए डिज़ाइन किया गया है। अपने में MouseListener क्लास, तुम रजिस्टर करें इन घटनाओं में से किसी को "सुनने" के लिए, ताकि वे होने पर आपको सूचित किया जाए।

जब ईवेंट फायर होता है (उदाहरण के लिए, उपयोगकर्ता माउस को क्लिक करता है, जैसे कि mouseClicked () विधि ऊपर), एक प्रासंगिक MouseEvent उस घटना का प्रतिनिधित्व करने वाली वस्तु बनाई और पास की जाती है MouseListener इसे प्राप्त करने के लिए पंजीकृत वस्तु।

इवेंट श्रोताओं के प्रकार

इवेंट श्रोताओं को विभिन्न इंटरफेस द्वारा दर्शाया जाता है, जिनमें से प्रत्येक को एक समकक्ष घटना को संसाधित करने के लिए डिज़ाइन किया गया है।

ध्यान दें कि घटना श्रोता लचीले हैं कि एक एकल श्रोता को कई प्रकार की घटनाओं के लिए "सुनने" के लिए पंजीकृत किया जा सकता है। इसका मतलब है कि, समान प्रकार के घटकों के लिए जो एक ही प्रकार की कार्रवाई करते हैं, एक घटना श्रोता सभी घटनाओं को संभाल सकता है।

यहाँ कुछ सबसे सामान्य प्रकार हैं:

  • ActionListener: एक के लिए सुनता है ActionEvent, यानी जब एक चित्रमय तत्व को किसी सूची में बटन या आइटम के रूप में क्लिक किया जाता है।
  • ContainerListener: एक के लिए सुनता है ContainerEvent, जो तब हो सकता है जब उपयोगकर्ता इंटरफ़ेस से कोई ऑब्जेक्ट जोड़ता या हटाता है।
  • KeyListener: के लिए सुनता है महत्वपूर्ण घटना जिसमें उपयोगकर्ता कुंजी दबाता है, टाइप करता है या जारी करता है।
  • WindowListener: एक के लिए सुनता है WindowEvent, उदाहरण के लिए, जब कोई विंडो बंद होती है, सक्रिय या निष्क्रिय होती है।
  • MouseListener: एक के लिए सुनता है MouseEvent, जैसे कि जब एक माउस क्लिक या दबाया जाता है।