public class MenuItem extends MenuComponentimplements Accessible
MenuItem, or one of its subclasses.
The default MenuItem object embodies a simple labeled menu item.
This picture of a menu bar shows five menu items:
The first two items are simple menu items, labeled "Basic" and "Simple". Following these two items is a separator, which is itself a menu item, created with the label "-". Next is an instance of CheckboxMenuItem labeled "Check". The final menu item is a submenu labeled "More Examples", and this submenu is an instance of Menu.
When a menu item is selected, AWT sends an action event to the menu item. Since the event is an instance of ActionEvent, the processEvent method examines the event and passes it along to processActionEvent. The latter method redirects the event to any ActionListener objects that have registered an interest in action events generated by this menu item.
Note that the subclass Menu overrides this behavior and does not send any event to the frame until one of its subitems is selected.
| Modifier and Type | Class and Description |
|---|---|
protected class |
MenuItem
Inner class of MenuItem used to provide default support for accessibility.
|
MenuComponent.AccessibleAWTMenuComponent | Constructor and Description |
|---|
MenuItem()
Constructs a new MenuItem with an empty label and no keyboard shortcut.
|
MenuItem(String
Constructs a new MenuItem with the specified label and no keyboard shortcut.
|
MenuItem(String
Create a menu item with an associated keyboard shortcut.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addActionListener(ActionListener
Adds the specified action listener to receive action events from this menu item.
|
void |
addNotify()
Creates the menu item's peer.
|
void |
deleteShortcut()
Delete any
MenuShortcut object associated with this menu item.
|
void |
disable()
Deprecated.
As of JDK version 1.1, replaced by
setEnabled(boolean).
|
protected void |
disableEvents(long eventsToDisable)
Disables event delivery to this menu item for events defined by the specified event mask parameter.
|
void |
enable()
Deprecated.
As of JDK version 1.1, replaced by
setEnabled(boolean).
|
void |
enable(boolean b)
Deprecated.
As of JDK version 1.1, replaced by
setEnabled(boolean).
|
protected void |
enableEvents(long eventsToEnable)
Enables event delivery to this menu item for events to be defined by the specified event mask parameter
|
AccessibleContext |
getAccessibleContext()
Gets the AccessibleContext associated with this MenuItem.
|
String |
getActionCommand()
Gets the command name of the action event that is fired by this menu item.
|
ActionListener |
getActionListeners()
Returns an array of all the action listeners registered on this menu item.
|
String |
getLabel()
Gets the label for this menu item.
|
<T extends EventListener |
getListeners(Class
Returns an array of all the objects currently registered as
FooListeners upon this
MenuItem.
|
MenuShortcut |
getShortcut()
Get the
MenuShortcut object associated with this menu item,
|
boolean |
isEnabled()
Checks whether this menu item is enabled.
|
String |
paramString()
Returns a string representing the state of this
MenuItem.
|
protected void |
processActionEvent(ActionEvent
Processes action events occurring on this menu item, by dispatching them to any registered
ActionListener objects.
|
protected void |
processEvent(AWTEvent
Processes events on this menu item.
|
void |
removeActionListener(ActionListener
Removes the specified action listener so it no longer receives action events from this menu item.
|
void |
setActionCommand(String
Sets the command name of the action event that is fired by this menu item.
|
void |
setEnabled(boolean b)
Sets whether or not this menu item can be chosen.
|
void |
setLabel(String
Sets the label for this menu item to the specified label.
|
void |
setShortcut(MenuShortcut
Set the
MenuShortcut object associated with this menu item.
|
dispatchEvent, getFont, getName, getParent, getPeer, getTreeLock, postEvent, removeNotify, setFont, setName, toStringpublic MenuItem()
throws HeadlessException
HeadlessException - if GraphicsEnvironment.isHeadless() returns true.
GraphicsEnvironment.isHeadless()
public MenuItem(Stringlabel) throws HeadlessException
label - the label for this menu item.
HeadlessException - if GraphicsEnvironment.isHeadless() returns true.
GraphicsEnvironment.isHeadless()
public MenuItem(Stringlabel, MenuShortcut s) throws HeadlessException
label - the label for this menu item.
s - the instance of
MenuShortcut associated with this menu item.
HeadlessException - if GraphicsEnvironment.isHeadless() returns true.
GraphicsEnvironment.isHeadless()
public void addNotify()
public StringgetLabel()
null if this menu item has no label.
setLabel(java.lang.String)
public void setLabel(Stringlabel)
label - the new label, or
null for no label.
getLabel()
public boolean isEnabled()
setEnabled(boolean)
public void setEnabled(boolean b)
b - if
true, enables this menu item; if
false, disables it.
isEnabled()
@Deprecated public void enable()
setEnabled(boolean).
@Deprecated public void enable(boolean b)
setEnabled(boolean).
@Deprecated public void disable()
setEnabled(boolean).
public MenuShortcutgetShortcut()
MenuShortcut object associated with this menu item,
null if none has been specified.
setShortcut(java.awt.MenuShortcut)
public void setShortcut(MenuShortcuts)
MenuShortcut object associated with this menu item. If a menu shortcut is already associated with this menu item, it is replaced.
s - the menu shortcut to associate with this menu item.
getShortcut()
public void deleteShortcut()
MenuShortcut object associated with this menu item.
protected final void enableEvents(long eventsToEnable)
Since event types are automatically enabled when a listener for that type is added to the menu item, this method only needs to be invoked by subclasses of MenuItem which desire to have the specified event types delivered to processEvent regardless of whether a listener is registered.
eventsToEnable - the event mask defining the event types
processEvent(java.awt.AWTEvent),
disableEvents(long),
Component.enableEvents(long)
protected final void disableEvents(long eventsToDisable)
eventsToDisable - the event mask defining the event types
processEvent(java.awt.AWTEvent),
enableEvents(long),
Component.disableEvents(long)
public void setActionCommand(Stringcommand)
By default, the action command is set to the label of the menu item.
command - the action command to be set for this menu item.
getActionCommand()
public StringgetActionCommand()
setActionCommand(java.lang.String)
public void addActionListener(ActionListenerl)
Refer to AWT Threading Issues for details on AWT's threading model.
l - the action listener.
removeActionListener(java.awt.event.ActionListener),
getActionListeners(),
ActionEvent,
ActionListener
public void removeActionListener(ActionListenerl)
Refer to AWT Threading Issues for details on AWT's threading model.
l - the action listener.
addActionListener(java.awt.event.ActionListener),
getActionListeners(),
ActionEvent,
ActionListener
public ActionListener[] getActionListeners()
ActionListeners or an empty array if no action listeners are currently registered
addActionListener(java.awt.event.ActionListener),
removeActionListener(java.awt.event.ActionListener),
ActionEvent,
ActionListener
public <T extends EventListener> T[] getListeners(Class <T> listenerType)
FooListeners upon this
MenuItem.
FooListeners are registered using the
addFooListener method.
You can specify the listenerType argument with a class literal, such as FooListener.class. For example, you can query a MenuItem m for its action listeners with the following code:
ActionListener[] als = (ActionListener[])(m.getListeners(ActionListener.class));If no such listeners exist, this method returns an empty array.
listenerType - the type of listeners requested; this parameter should specify an interface that descends from
java.util.EventListener
FooListeners on this menu item, or an empty array if no such listeners have been added
ClassCastException - if
listenerType doesn't specify a class or interface that implements
java.util.EventListener
getActionListeners()
protected void processEvent(AWTEvente)
ActionEvent, it invokes
processActionEvent, another method defined by
MenuItem.
Currently, menu items only support action events.
Note that if the event parameter is null the behavior is unspecified and may result in an exception.
processEvent in class
MenuComponent
e - the event
processActionEvent(java.awt.event.ActionEvent)
protected void processActionEvent(ActionEvente)
ActionListener objects. This method is not called unless action events are enabled for this component. Action events are enabled when one of the following occurs:
ActionListener object is registered via addActionListener. enableEvents. Note that if the event parameter is null the behavior is unspecified and may result in an exception.
e - the action event
ActionEvent,
ActionListener,
enableEvents(long)
public StringparamString()
MenuItem. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not be
null.
paramString in class
MenuComponent
public AccessibleContextgetAccessibleContext()
getAccessibleContext in interface
Accessible
getAccessibleContext in class
MenuComponent