Java in Hindi – Abstract Windows ToolKit (AWT)

  • Introduction to java AWT (Abstract Windows Toolkit) in Hindi
  • Container classes of java AWT in Hindi
  • Component classes of java AWT in Hindi

Java AWT (Abstract Windows Toolkit)

Java में GUI (Graphical User Interface) create करने के 2 तरीके है, पहला AWT और दूसरा SWING है। Swing AWT का extended version है, इसमें कुछ advanced features होते है। लेकिन java AWT के द्वारा भी अच्छी graphical application develop की जा सकती है।

A GUI Library

AWT एक GUI library होती है, जो graphical application में graphical components (Buttons, Text box, Check box) add करने के लिए packages और classes provide करती है।

java.awt.*

AWT library को किसी भी java program के साथ यूज़ किया जा सकता है। उसके लिए आपको java.awt.* package को import करना पड़ता है।कोई भी application जैसे की calculator या text editor आदि आप AWT library के components (Buttons, Text-box, Check-box etc.) को यूज़ करते हुए बना सकते है। Java AWT के साथ अच्छी बात ये है की आप आसानी से इसे यूज़ कर सकते है।

Components Are Represented as Classes

सभी components classes के द्वारा represent किये जाते है। आप सिर्फ इन classes के object create करते है और वो components आपकी application में add हो जाते है। यदि आप java में AWT के साथ काम कर सकते है तो Swing के साथ काम करने में आपको कोई problem नहीं होगी।

Two Types of Classes

AWT library में 2 तरह की classes होती है। पहली container और दूसरी component classes होती है। AWT library इन ही 2 तरह की classes से मिलकर बनी हुई है। यदि आप इन 2 तरह की classes का concept समझ ले तो आपको AWT यूज़ करने में कोई problem नहीं होगी।

Container Classes 

Container एक window होती है। जिसमे आप components को add करते है। ये आपकी application की main window होती है,

A Base for Components

जैसे की आपके browser की window है। ये window component के लिए base का काम करती है। इस window में आप components(buttons, text boxes, checkboxes आदि) को add करते है। एक container में आप किसी दूसरे container को भी add कर सकते है।

Java की AWT library में 4 तरह की container classes है आप कोई सी भी यूज़ कर सकते है और उसमे components को add करवा सकते है। सबसे ज्यादा frame class को यूज़ किया जाता है। 

ClassesExplanation
Windowये एक window होती है। इस window की border नहीं होती है। और इसमें menu bar भी नहीं होता है।     
Panelये एक window होती है। इसमें title bar और menu bar नहीं होते है। और इस window की border भी नहीं होती है।
Frameये एक window होती है। इसमें menu bar और title bar होते है। और इस window की borders भी होती है।
Dialog ये किसी दूसरी window के अंदर एक window होती है। ये किसी user event पर कोई message और उसके साथ action लेने के लिए components को display करती है। 

इन सभी windows को आप अपने according customize कर सकते है। जैसे की window की size अपने according रख सकते है और आप window में कौनसा layout यूज़ करना चाहते है,

Configuring Containers

ये भी आप define कर सकते है। इस काम के लिए java AWT library कुछ methods provide करती है।

MethodExplanationExample
add(Component obj)इस मेथड के द्वारा आप कोई भी component container में add कर सकते है। इसके लिए आपको component class का object पास करना होता है।    add(b1); 
setSize(height,width)इस method के द्वारा आप container की size set करते है।setSize(100,300);
setLayout(LayoutManager obj)इस method के द्वारा आप container में layout define करते है।   setSize(100,300);
setVisible(true/false)इस method के द्वारा आप container को visible और  non-visible करते है।setVisible(true);

Component Classes 

Components वो controls होते है, जिनसे users interact करते है। जैसे की button, text-field, scroll-bar और text-area आदि। Components standalone नहीं होते है। बिना container के आप component को यूज़ नहीं कर सकते है। इसलिए java AWT library दो तरह की classes provide करती है।

Add In a Container

पहले आप component क्रिएट करते है और फिर उसे container में add करवाते है। इसके बाद ही user components को यूज़ कर सकता है। हर component एक class को represent करता है।Component create करने के लिए आप simple उस component class का object क्रिएट करते है।  

ClassesExplanation
Buttonइस class का object create करके आप एक button create कर सकते है।
Check-Boxये class check-box क्रिएट करने के लिए यूज़ की जाती है।   
Choiceइस class से आप एक drop down menu क्रिएट कर सकते है।  
Labelइस class का object क्रिएट करके आप एक label क्रिएट कर सकते है।
Listइस class से आप एक list create कर सकते है।

Containers की तरह ही आप components को भी configure कर सकते है।

जैसे की components का background color change कर सकते है ओर उनकी size को छोटा या बड़ा कर सकते है।

Configuring Components

इन सभी कामों के लिए java AWT library methods provide करती है। इन methods की मदद से आप सभी components को अपनी application के according configure कर सकते है। 

MethodExplanationExample
setBackground(color) इस मेथड से आप component का background color change कर सकते है। setBackground(red);
resize(height,width)  इस method से आप component की size को कम या ज्यादा कर सकते है। resize(30,80);
move(int,int); 
 इस method से आप component को dynamically move कर सकते है।move(50,120)
setBounds(int,int,int,int)इस method से आप component की starting position set करते है।setBounds(30,150,200,160)

Java Frame Class 

Java में frame एक container class है। अपनी application और need के according आप कोई सा भी container यूज़ कर सकते है। लेकिन ज्यादातर frame का यूज़ किया जाता है।

Comes with Basic Utilities

Frame container में आपको title bar, menu bar और borders मिलती है इसलिए सभी basic graphical applications के लिए इसको यूज़ किया जाता है। इसी वजह से मैने java AWT के example में भी frame class को ही यूज़ किया है।

Extend or Create Object

Frame class को आप 2 तरह से यूज़ कर सकते है। पहले तरीके में आप frame class को extend करते है। दूसरे तरीके में आप frame class को extend ना करके frame class का object create करते है।

Example1: Extend Frame class

class guiLabel extends Frame 
{  
  guiLabel() 
  {   
    Label lb = new Label("This is AwT BeSt ExAmPlE"); 
    add(lb); 
    setSize(200,200);   
    setVisible(true); 
   } 
 
 public static void main(String args[])  
 {    
   guiLabel gl = new guiLabel();  
 }  
}

ऊपर दिए हुए उदाहरण में frame class को extend किया गया है। इस उदाहरण को आप आसानी से समझ सकते है।

example2: Create frame class object

class guiButton 
{ 
  public static void main()  
  {    
    Frame f = new Frame(); 
    Button b1 = new Button("Click it!!");  
    f.add(b1);  
    f.setTitle("Button Example"); 
    f.setSize(200,200); 
    f.setVisible(true); 
  } 
}

Previous: Java Generics
Next: Java Event Handling