Extend a Button: इस Event Handling तकनीक को Button के साथ Use करने की प्रक्रिया को हम एक उदाहरण द्वारा समझने की कोशिश कर रहे हैं। अगले उदाहरण में हमने एक Applet Create किया है, जिस पर एक Button Object Create किया गया है। जब हम इस Button को Click करते हैं, तो Applet के Status Bar में “Action Event” String Display होता है। साथ ही Button को कुल कितनी बार Press किया गया है, उसकी संख्या भी Status Bar में Display होती है।
// File Name : ExtendingButtonApplet.java import java.awt.*; import java.awt.event.*; import java.applet.*; public class ExtendingButtonApplet extends Applet { MyButton btnPress; static int i = 0; public void init() { btnPress = new MyButton("Press Me"); add(btnPress); } // Extended Button Class class MyButton extends Button { public MyButton(String label) { super(label); enableEvents(AWTEvent.ACTION_EVENT_MASK); } protected void processActionEvent(ActionEvent actnEvtn) { showStatus("Action Event : " + i++); super.processActionEvent(actnEvtn); } } }

इस Program में हमने MyButton Class को एक Inner Class के रूप में Applet में Define किया है। इस Class को Button Class से Derive किया गया है। MyButton Class में Button पर Label Display करने के लिए हमने super() Method को Use किया है। इस Method की वजह हम Button पर जो Label देना चाहते हैं, वह Label MyButton Sub Class के Constructor द्वारा Button Super Class में Pass किया जाता है।
फिर MyButton Class के Object द्वारा Generate होने वाले Events को Handle किया जा सके, इसलिए इस Class के Constructor में enableEvents() Method को Use किया है और Argument के रूप में ये भी बताया है कि MyButton Class के Object द्वारा Generate होने वाले किस तरह के Events को ये Inner Class Handle कर सकेगा।
यदि हम enableEvents() Method में Argument के रूप में MyButton Class द्वारा Generate होने वाले Events की जानकारी ना दें या इस Method को इस तरह से Call ना करें, तो हमारा Button किसी प्रकार के Event को Response नहीं करेगा। जब हम MyButton Class के किसी Button पर Click करते हैं, तब एक ActionEvent Object Generate होता है और जब कोई ActionEvent Object Generate होता है, processActionEvent() Method Execute हो जाता है।
चूंकि MyButton Class Applet Class की एक Inner Class है, इसलिए ये Class Applet Class के किसी भी Member को Directly Access करने में सक्षम है। इस तरह से हम एक Button Class को Extends करके Event Handling के लिए Use कर सकते हैं। इसी तरह से हम अन्य Classes को Extend करके उन्हें Event Handling के साथ Use कर सकते हैं।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Java in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Java Programming Language in Hindi | Page: 682 | Format: PDF