Menubar in Java

Menubar in Java: एक Top-Level Window के साथ एक Menu Associate किया जा सकता है। एक Menu Bar Top-Level Menu Choices की एक List Display करता है। हर Choice एक Drop-Down Menu से Associated होता है। Menu Bar के Concept को जावा में MenuBar, MenuMenuItem Classes का प्रयोग करके Implement किया जाता है।

सामान्‍यतया Menu Bar में एक या एक से अधिक Menu Objects होते हैं। हमारे Menu Object में एक MenuItem Object होता हैं और हर MenuItem Object कुछ Options Display करता है, जिन्हें User Select कर सकता है।

चूंकि Menu Class MenuItem Class की Sub Class है, इसलिए Nested Sub Menus की Hierarchy Create की जा सकती है। साथ ही हम किसी Menu में Checkable Menu Items भी Create कर सकते हैं। इस प्रकार के Checkable Menu Items को CheckboxMenuItem कहते हैं और जब इन्हें Select किया जाता है, तब इनके साथ एक Check Mark Associated हो जाता है।

Menu Bar Create करने के लिए हमें सबसे पहले MenuBar Class का एक Object Create करना होता है। इस Class में केवल एक Default Constructor होता है। फिर हमें Menu Class का एक Object Create करना होता है, जो कि उन Menus को Define करता है, जो Menu Bar पर Display होते हैं। Menu Class में निम्न Constructors होते हैं:

Menu()
Menu(String optionName)
Menu(String optionName, boolean removable)

यहां optionName Menu Selection के नाम को Specify करता है। यदि removable Argument में true Specified हो, तो Pop-up Menu को Menu Bar से Remove किया जा सकता है। पहला Constructor एक Empty menu Bar Create करता है। हर Individual Menu Item MenuItem Class का Object होता है। इस Class में निम्न Constructors होते हैं:

MenuItem()
MenuItem (String itemName)
MenuItem (String itemName, MenuShortcut keyAccel)

इन Constructors में itemName वह नाम है जो Menu में Option के रूप में दिखाई देता है और keyAccel Menu के उस Option को Shortcut होता है। हम किसी Menu Item को setEnabled() Method का प्रयोग करके Enable या Disable कर सकते हैं। ये Method निम्नानुसार होता है:

void setEnabled(boolean enabledFlag)

यदि enabledFlag Argument में true हो तो वह Menu Item Enabled रहता है और यदि इसमें false हो तो वह Menu Item Disabled हो जाता है। कोई Menu Item Enabled है या Disabled इस बात की जानकारी प्राप्त करने के लिए हम isEnabled() Method को Use कर सकते हैं, जिसका Syntax निम्नानुसार होता है:

boolean isEnabled()

यदि Check किया जाने वाला Menu Item Enabled हो तो ये Method true Return करता है, अन्‍यथा false Return करता है। किसी Menu Item के Label को Change करने के लिए हम setLabel() Method को Use कर सकते हैं और किसी Menu Item के Label को प्राप्त करने के लिए हम getLabel() Method को Use कर सकते हैं। इनके Syntax निम्नानुसार हैं:

void setLabel(String newName)
String getLabel()

Checkable Menu Item Create करने के लिए हमें MenuItem की Subclass CheckboxMenuItem को Use करना होता है। इसके Constructors निम्नानुसार हैं:

CheckboxMenuItem()
CheckboxMenuItem(String itemName)
CheckboxMenuItem(String itemName, boolean on)

यहां itemName वह नाम है जिसे Menu में Checkable Form में Display करना होता है। यदि हमें Menu में किसी Item को Checked रखना होता है, तो हमें on Argument में true Pass करना होता है। पहले दो Constructors एक Unchecked MenuItem Create करते हैं। किसी Checkable Menu Item की Status प्राप्त करने के लिए हमें getState() Method को Use करना होता है। जबकि किसी Menu Item की State को Set करने के लिए हम setState() Method को Use कर सकते हैं। इनका Syntax निम्नानुसार है:

boolean getState()
void setState(boolean checked)

जब कोई Menu Item Checked होता है, तब getState() Method true Return करता है, जबकि Unchecked होने पर false Return करता है। इसी तरह से जब हमें किसी Unchecked Menu Item को Check करना हो या Checked Menu Item को Unchecked करना हो, तब हम setState() Method को Use करते हैं।

Menu Item Create करने के बाद हमें इन Menu Items को Menu Object में add() Method द्वारा Add करना होता है। इसके लिए हम add() Method को निम्न तरीके से Use करते हैं:

MenuItem add(MenuItem item)

इस Statement में item वह Item है, जिसे menu में Add करना है। हम जिस क्रम में add() Method को Call करते हैं, Menu में उसी क्रम में Menu Items Add होते हैं। जब एक बार हम विभिन्न Menu Items को Add कर लेते हैं, उसके बाद हम उस MenuItem Object को Menu Bar में Add कर सकते हैं। इसके लिए भी हमें add() Method को Call करना होता है, जो कि हम निम्नानुसार करते हैं:

Menu add(Menu menu)

Menus हमेंशा तभी Event Generate करते हैं, जब User किसी MenuItem या CheckboxMenuItem के किसी Option को Select करता है। हम जब भी किसी Menu Item को Select करते हैं, एक ActionEvent Object Generate होता है और हम जब भी किसी CheckboxMenuItem को Select करते हैं, एक ItemEvent Object Generate होता है। इसलिए हमें ActionListenerItemListener Interface को इन Generate होने वाले Events को Listen करने के लिए Implement करना होता है। ItemEvent Object का getItem() Method उस Item का Reference Return करता है, जिसने Event Object को Generate किया होता है। इस Method का Syntax निम्नानुसार होता है:

Object getItem()

चलिए, अब Menu Creation की इस पूरी प्रक्रिया को Practically समझते हैं। जावा में Menu Bar Create करने के लिए सबसे पहले हमें MenuBar Class का एक Object Create करना होता है। ये काम हम निम्नानुसार Statement द्वारा करते हैं:

MenuBar myFirstMenu = new MenuBar();

MenuBar Class का Object Create करने के बाद हमें इस Menu Bar को किसी Frame Window से Attach करना होता है। किसी Frame Window से Menu Bar Object को Connect करने के लिए सबसे पहले हमें Frame Class का एक Object Create करके Frame Create करना होता है। ये काम हम निम्नानुसार करते हैं:

Frame myFrame = new Frame(“Frame with Menu”);

Frame Create करने के बाद Create किए गए Menu Bar Object को इस Frame से Attach करने के लिए हमें setMenuBar() Method को Use करना होता है। इस Method का प्रयोग करके हम Create होने वाले Menu Bar को Frame Window से Attach कर सकते हैं। इस method को हमें निम्नानुसार Use करना होता है:

myFrame.setMenuBar(myFirstMenu);

चूंकि] अभी हमने Frame से जो Menu Connect किया है, वह Menu Bar पूरी तरह से Empty है, क्योंकि उसमें अभी तक कोई भी Menu नहीं है। इस Menu Bar में नया Menu Attach करने के लिए अब हमें Menu Class का Object Create करना होता है। हमें Menu Bar में जितने Menu Attach करने होते हैं, उतने Menu Object Create करने होते हैं। Menu Class का Object करने के लिए हमें निम्नानुसार Menu Objects Create करने होते हैं:

Menu fileMenu = new Menu(“File”);
Menu editMenu = new Menu(“Edit”);
Menu optionMenu = new Menu(“Options”);

Menu Class के Constructor में हमें Menu Bar पर दिखाई देने वाले नाम को Specify करना होता है। इस Constructor में हम जो String Pass करते हैं, वह String Caption के रूप में Menu Bar पर दिखाई देता है। Menus को Create करने के बाद हमें इन Menus को Menu Bar Object से Attach करना होता है। Menus को MenuBar Object से Attach करने के लिए हमें add() Method को Use करना होता है। ये काम हम निम्नानुसार कर सकते हैं:

myFirstMenu.add(fileMenu);
myFirstMenu.add(editMenu);
myFirstMenu.add(optionMenu);

विभिन्न Menus को Menu Bar से Connect करने के बाद हमें Menus में दिखाई देने वाले Items को Create करना होता है। Menu Items को Create करने के लिए हमें MenuItem Class को Use करना होता है। MenuItem Object Create करने के लिए हमें निम्नानुसार Statements Use करना होता है:

MenuItem mOpen = new MenuItem(“Open”)
MenuItem mClose = new MenuItem(“Close”) 

MenuItem mUndo = new MenuItem(“Undo”)
MenuItem mRedo = new MenuItem(“Redo”)

MenuItem mOption1 = new MenuItem(“Option1”)
MenuItem mOption2 = new MenuItem(“Option2”)

यदि हम किसी Checkbox Menu Item को Create करना चाहें, तो हमें CheckboxMenuItem Class का Object Create करना होता है। ये Object हम निम्नानुसार Create कर सकते हैं:

CheckboxMenuItem mOption3= new CheckboxMenuItem(“mOption3”)

कई Menus के विभिन्न Items के बीच हमें एक Line Use करनी होती है। इस Line को Separator कहते हैं। हम इस Separator को भी एक MenuItem Object की तरह Create करके Menu में Add कर सकते हैं। Separator Create करने के लिए हमें निम्नानुसार Statement Use करना होता है:

MenuItem mSeparator = new MenuItem(“-”)           //Separator

विभिन्न प्रकार के Menu Items Create करने के बाद इन Items को उनसे सम्बंधित Menu से Attach करना होता है। Menu से विभिन्न Menu Items को Attach करने के लिए हमें निम्नानुसार add() Method को Call करना होता है:

fileMenu.add(mOpen)
fileMenu.add(mClose)

editMenu.add(mUndo)
editMenu.add(mRedo)

optionMenu.add(mOption1)
optionMenu.add(mOption2)
optionMenu.add(mSeparator)
optionMenu.add(mOption3)

किसी Menu में यदि हमें Separator Add करना हो, तो हम setSeparator() Method का प्रयोग भी कर सकते हैं। यानी मानलो कि हमें हमारे Option Menu में एक Separator Add करना है, तो ये काम हम निम्नानुसार भी कर सकते हैं:

optionMenu.add(mOption1)
optionMenu.add(mOption2)
optionMenu.addSeparator()
optionMenu.add(mOption3)

अब यदि हम हमारे Program को Compile करके Run करते हैं, तो हमें हमारे Frame Window के साथ एक Menu Bar भी दिखाई देता है। इस पूरी प्रक्रिया को हम निम्नानुसार एक Program द्वारा समझ सकते हैं।

Example Program of Menubar in Java

// File Name : ManuDemoApp.java
import java.awt.*;

public class ManuDemoApp
{
	public static void main(String arts[])
	{
		// Create a frame and a MenuBar
		Frame myFrame = new Frame("My Frame with Menu");
		MenuBar myMenubar = new MenuBar();

		// Add the MenuBar to the frame
		myFrame.setMenuBar(myMenubar);

		// Create the File and Edit Menus and Attach it with the MenuBar
		Menu mFile = new Menu("File");
		Menu mEdit = new Menu("Edit");

		myMenubar.add(mFile);
		myMenubar.add(mEdit);

		// Add New and Close options to File Menu and 
		// Add Copy and Paste to the Edit Menu
		MenuItem mNew = new MenuItem("New");
		MenuItem mClose = new MenuItem("Close");
		mFile.add(mNew);
		mFile.add(mClose);

		MenuItem mCopy = new MenuItem("Copy");
		MenuItem mPaste = new MenuItem("Paste");
		mEdit.add(mCopy);	
		mEdit.add(mPaste);

		// Make Close disabled
		mClose.setEnabled(false);
	
		// Create Print checkbox, followed by separator
		CheckboxMenuItem mPrint = new CheckboxMenuItem("Print");
		mFile.add(mPrint);
		mFile.addSeparator();

		// Create Font submenu
		Menu mFont = new Menu("Font");
		mFile.add(mFont);
		mFont.add("Arial");
		mFont.add("Times New Romans");

		// Resize the frame
		myFrame.setSize(300, 200);

		// Display the Frame on the screen
		myFrame.setVisible(true);
	}
}
Menubar in Java in Hindi

कई बार हम हमारे Program में Pop-up Menu Add करना चाहते हैं। Pop-up Menu एक ऐसा Menu होता है, जो Frame Window या Applet में Mouse के Right Button को Click करने पर Display होता है। जब हमें हमारे Program में Popup Menu Attach करना होता है, तब हमें निम्न क्रम में विभिन्न काम करने होते हैं:

  • सबसे पहले PopupMenu Class का एक Object Create किया जाता है। ये काम हम निम्नानुसार कर सकते हैं:

PopupMenu myPopup = new PopupMenu();

  • PopupMenu Class का Object Create करने के बाद हमें एक Menu Create करना होता है, जिसे हम Popup Menu Object में Add करना चाहते हैं। ये काम करने के लिए हमें Menu Class का एक Object Create करना होगा और उस Object को PopupMenu Object से Add करना होगा। ये काम हम निम्नानुसार कर सकते हैं:

Menu myPopupMenu = new Menu(“Popup”);
myPopup.add(myPopupMenu);

  • PopupMenu से Menu को Add करने के बाद हमें उस Menu में Display होने वाले Menu Items Create करने होते हैं और उन Menu Items को Menu Object में Add करना होता है। ये काम हम निम्नानुसार कर सकते हैं:

MenuItem mRefresh = new MenuItem(“Refresh”);
myPopupMenu.add(mRefresh);

Java Programming Language in Hindiये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Java in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

Java Programming Language in Hindi | Page: 682 | Format: PDF

BUY NOW GET DEMO REVIEWS