JMenuItem (Java 2 Platform SE 5.0) (original) (raw)


javax.swing

Class JMenuItem

java.lang.Object extended by java.awt.Component extended by java.awt.Container extended by javax.swing.JComponent extended by javax.swing.AbstractButton extended by javax.swing.JMenuItem

All Implemented Interfaces:

ImageObserver, ItemSelectable, MenuContainer, Serializable, Accessible, MenuElement, SwingConstants

Direct Known Subclasses:

JCheckBoxMenuItem, JMenu, JRadioButtonMenuItem


public class JMenuItem

extends AbstractButton

implements Accessible, MenuElement

An implementation of an item in a menu. A menu item is essentially a button sitting in a list. When the user selects the "button", the action associated with the menu item is performed. A JMenuItem contained in a JPopupMenu performs exactly that function.

For further documentation and for examples, seeHow to Use Menus in The Java Tutorial.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the java.beans package. Please see XMLEncoder.

See Also:

JPopupMenu, JMenu, JCheckBoxMenuItem, JRadioButtonMenuItem


Nested Class Summary
protected class JMenuItem.AccessibleJMenuItem This class implements accessibility support for the JMenuItem class.
Nested classes/interfaces inherited from class javax.swing.AbstractButton
AbstractButton.AccessibleAbstractButton, AbstractButton.ButtonChangeListener
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
Field Summary
Fields inherited from class javax.swing.AbstractButton
actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor Summary
JMenuItem() Creates a JMenuItem with no set text or icon.
JMenuItem(Action a) Creates a menu item whose properties are taken from the specified Action.
JMenuItem(Icon icon) Creates a JMenuItem with the specified icon.
JMenuItem(String text) Creates a JMenuItem with the specified text.
[JMenuItem](../../javax/swing/JMenuItem.html#JMenuItem%28java.lang.String, javax.swing.Icon%29)(String text,Icon icon) Creates a JMenuItem with the specified text and icon.
[JMenuItem](../../javax/swing/JMenuItem.html#JMenuItem%28java.lang.String, int%29)(String text, int mnemonic) Creates a JMenuItem with the specified text and keyboard mnemonic.
Method Summary
void addMenuDragMouseListener(MenuDragMouseListener l) Adds a MenuDragMouseListener to the menu item.
void addMenuKeyListener(MenuKeyListener l) Adds a MenuKeyListener to the menu item.
protected void configurePropertiesFromAction(Action a) Factory method which sets the ActionEvent source's properties according to values from the Action instance.
protected PropertyChangeListener createActionPropertyChangeListener(Action a) Factory method which creates the PropertyChangeListener used to update the ActionEvent source as properties change on its Action instance.
protected void fireMenuDragMouseDragged(MenuDragMouseEvent event) Notifies all listeners that have registered interest for notification on this event type.
protected void fireMenuDragMouseEntered(MenuDragMouseEvent event) Notifies all listeners that have registered interest for notification on this event type.
protected void fireMenuDragMouseExited(MenuDragMouseEvent event) Notifies all listeners that have registered interest for notification on this event type.
protected void fireMenuDragMouseReleased(MenuDragMouseEvent event) Notifies all listeners that have registered interest for notification on this event type.
protected void fireMenuKeyPressed(MenuKeyEvent event) Notifies all listeners that have registered interest for notification on this event type.
protected void fireMenuKeyReleased(MenuKeyEvent event) Notifies all listeners that have registered interest for notification on this event type.
protected void fireMenuKeyTyped(MenuKeyEvent event) Notifies all listeners that have registered interest for notification on this event type.
KeyStroke getAccelerator() Returns the KeyStroke which serves as an accelerator for the menu item.
AccessibleContext getAccessibleContext() Returns the AccessibleContext associated with this JMenuItem.
Component getComponent() Returns the java.awt.Component used to paint this object.
MenuDragMouseListener[] getMenuDragMouseListeners() Returns an array of all the MenuDragMouseListeners added to this JMenuItem with addMenuDragMouseListener().
MenuKeyListener[] getMenuKeyListeners() Returns an array of all the MenuKeyListeners added to this JMenuItem with addMenuKeyListener().
MenuElement[] getSubElements() This method returns an array containing the sub-menu components for this menu component.
String getUIClassID() Returns the suffix used to construct the name of the L&F class used to render this component.
protected void [init](../../javax/swing/JMenuItem.html#init%28java.lang.String, javax.swing.Icon%29)(String text,Icon icon) Initializes the menu item with the specified text and icon.
boolean isArmed() Returns whether the menu item is "armed".
void menuSelectionChanged(boolean isIncluded) Called by the MenuSelectionManager when theMenuElement is selected or unselected.
protected String paramString() Returns a string representation of this JMenuItem.
void [processKeyEvent](../../javax/swing/JMenuItem.html#processKeyEvent%28java.awt.event.KeyEvent, javax.swing.MenuElement[], javax.swing.MenuSelectionManager%29)(KeyEvent e,MenuElement[] path,MenuSelectionManager manager) Processes a key event forwarded from the MenuSelectionManager and changes the menu selection, if necessary, by using MenuSelectionManager's API.
void processMenuDragMouseEvent(MenuDragMouseEvent e) Handles mouse drag in a menu.
void processMenuKeyEvent(MenuKeyEvent e) Handles a keystroke in a menu.
void [processMouseEvent](../../javax/swing/JMenuItem.html#processMouseEvent%28java.awt.event.MouseEvent, javax.swing.MenuElement[], javax.swing.MenuSelectionManager%29)(MouseEvent e,MenuElement[] path,MenuSelectionManager manager) Processes a mouse event forwarded from theMenuSelectionManager and changes the menu selection, if necessary, by using theMenuSelectionManager's API.
void removeMenuDragMouseListener(MenuDragMouseListener l) Removes a MenuDragMouseListener from the menu item.
void removeMenuKeyListener(MenuKeyListener l) Removes a MenuKeyListener from the menu item.
void setAccelerator(KeyStroke keyStroke) Sets the key combination which invokes the menu item's action listeners without navigating the menu hierarchy.
void setArmed(boolean b) Identifies the menu item as "armed".
void setEnabled(boolean b) Enables or disables the menu item.
void setUI(MenuItemUI ui) Sets the look and feel object that renders this component.
void updateUI() Resets the UI property with a value from the current look and feel.
Methods inherited from class javax.swing.AbstractButton
addActionListener, addChangeListener, [addImpl](../../javax/swing/AbstractButton.html#addImpl%28java.awt.Component, java.lang.Object, int%29), addItemListener, [checkHorizontalKey](../../javax/swing/AbstractButton.html#checkHorizontalKey%28int, java.lang.String%29), [checkVerticalKey](../../javax/swing/AbstractButton.html#checkVerticalKey%28int, java.lang.String%29), createActionListener, createChangeListener, createItemListener, doClick, doClick, fireActionPerformed, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, [imageUpdate](../../javax/swing/AbstractButton.html#imageUpdate%28java.awt.Image, int, int, int, int, int%29), isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, isSelected, paintBorder, removeActionListener, removeChangeListener, removeItemListener, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setFocusPainted, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setModel, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelected, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, [contains](../../javax/swing/JComponent.html#contains%28int, int%29), createToolTip, disable, enable, [firePropertyChange](../../javax/swing/JComponent.html#firePropertyChange%28java.lang.String, boolean, boolean%29), [firePropertyChange](../../javax/swing/JComponent.html#firePropertyChange%28java.lang.String, char, char%29), [firePropertyChange](../../javax/swing/JComponent.html#firePropertyChange%28java.lang.String, int, int%29), [fireVetoableChange](../../javax/swing/JComponent.html#fireVetoableChange%28java.lang.String, java.lang.Object, java.lang.Object%29), getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, [paintImmediately](../../javax/swing/JComponent.html#paintImmediately%28int, int, int, int%29), paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, [processKeyBinding](../../javax/swing/JComponent.html#processKeyBinding%28javax.swing.KeyStroke, java.awt.event.KeyEvent, int, boolean%29), processKeyEvent, processMouseEvent, processMouseMotionEvent, [putClientProperty](../../javax/swing/JComponent.html#putClientProperty%28java.lang.Object, java.lang.Object%29), [registerKeyboardAction](../../javax/swing/JComponent.html#registerKeyboardAction%28java.awt.event.ActionListener, javax.swing.KeyStroke, int%29), [registerKeyboardAction](../../javax/swing/JComponent.html#registerKeyboardAction%28java.awt.event.ActionListener, java.lang.String, javax.swing.KeyStroke, int%29), removeAncestorListener, removeNotify, removeVetoableChangeListener, [repaint](../../javax/swing/JComponent.html#repaint%28long, int, int, int, int%29), repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, [reshape](../../javax/swing/JComponent.html#reshape%28int, int, int, int%29), revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, [setFocusTraversalKeys](../../javax/swing/JComponent.html#setFocusTraversalKeys%28int, java.util.Set%29), setFont, setForeground, setInheritsPopupMenu, [setInputMap](../../javax/swing/JComponent.html#setInputMap%28int, javax.swing.InputMap%29), setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, [add](../../java/awt/Container.html#add%28java.awt.Component, int%29), [add](../../java/awt/Container.html#add%28java.awt.Component, java.lang.Object%29), [add](../../java/awt/Container.html#add%28java.awt.Component, java.lang.Object, int%29), [add](../../java/awt/Container.html#add%28java.lang.String, java.awt.Component%29), addContainerListener, addPropertyChangeListener, [addPropertyChangeListener](../../java/awt/Container.html#addPropertyChangeListener%28java.lang.String, java.beans.PropertyChangeListener%29), applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, [findComponentAt](../../java/awt/Container.html#findComponentAt%28int, int%29), findComponentAt, getComponent, [getComponentAt](../../java/awt/Container.html#getComponentAt%28int, int%29), getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, [list](../../java/awt/Container.html#list%28java.io.PrintStream, int%29), [list](../../java/awt/Container.html#list%28java.io.PrintWriter, int%29), [locate](../../java/awt/Container.html#locate%28int, int%29), minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, [setComponentZOrder](../../java/awt/Container.html#setComponentZOrder%28java.awt.Component, int%29), setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusBackward, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
[action](../../java/awt/Component.html#action%28java.awt.Event, java.lang.Object%29), add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, [checkImage](../../java/awt/Component.html#checkImage%28java.awt.Image, java.awt.image.ImageObserver%29), [checkImage](../../java/awt/Component.html#checkImage%28java.awt.Image, int, int, java.awt.image.ImageObserver%29), [coalesceEvents](../../java/awt/Component.html#coalesceEvents%28java.awt.AWTEvent, java.awt.AWTEvent%29), contains, createImage, [createImage](../../java/awt/Component.html#createImage%28int, int%29), [createVolatileImage](../../java/awt/Component.html#createVolatileImage%28int, int%29), [createVolatileImage](../../java/awt/Component.html#createVolatileImage%28int, int, java.awt.ImageCapabilities%29), disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, byte, byte%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, double, double%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, float, float%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, long, long%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, java.lang.Object, java.lang.Object%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, short, short%29), getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, [gotFocus](../../java/awt/Component.html#gotFocus%28java.awt.Event, java.lang.Object%29), handleEvent, hasFocus, hide, [inside](../../java/awt/Component.html#inside%28int, int%29), isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, [keyDown](../../java/awt/Component.html#keyDown%28java.awt.Event, int%29), [keyUp](../../java/awt/Component.html#keyUp%28java.awt.Event, int%29), list, list, list, location, [lostFocus](../../java/awt/Component.html#lostFocus%28java.awt.Event, java.lang.Object%29), [mouseDown](../../java/awt/Component.html#mouseDown%28java.awt.Event, int, int%29), [mouseDrag](../../java/awt/Component.html#mouseDrag%28java.awt.Event, int, int%29), [mouseEnter](../../java/awt/Component.html#mouseEnter%28java.awt.Event, int, int%29), [mouseExit](../../java/awt/Component.html#mouseExit%28java.awt.Event, int, int%29), [mouseMove](../../java/awt/Component.html#mouseMove%28java.awt.Event, int, int%29), [mouseUp](../../java/awt/Component.html#mouseUp%28java.awt.Event, int, int%29), [move](../../java/awt/Component.html#move%28int, int%29), nextFocus, paintAll, postEvent, [prepareImage](../../java/awt/Component.html#prepareImage%28java.awt.Image, java.awt.image.ImageObserver%29), [prepareImage](../../java/awt/Component.html#prepareImage%28java.awt.Image, int, int, java.awt.image.ImageObserver%29), processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, [removePropertyChangeListener](../../java/awt/Component.html#removePropertyChangeListener%28java.lang.String, java.beans.PropertyChangeListener%29), repaint, [repaint](../../java/awt/Component.html#repaint%28int, int, int, int%29), repaint, resize, [resize](../../java/awt/Component.html#resize%28int, int%29), [setBounds](../../java/awt/Component.html#setBounds%28int, int, int, int%29), setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, [setLocation](../../java/awt/Component.html#setLocation%28int, int%29), setLocation, setName, setSize, [setSize](../../java/awt/Component.html#setSize%28int, int%29), show, show, size, toString, transferFocus, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, [wait](../../java/lang/Object.html#wait%28long, int%29)
Constructor Detail

JMenuItem

public JMenuItem()

Creates a JMenuItem with no set text or icon.


JMenuItem

public JMenuItem(Icon icon)

Creates a JMenuItem with the specified icon.

Parameters:

icon - the icon of the JMenuItem


JMenuItem

public JMenuItem(String text)

Creates a JMenuItem with the specified text.

Parameters:

text - the text of the JMenuItem


JMenuItem

public JMenuItem(Action a)

Creates a menu item whose properties are taken from the specified Action.

Parameters:

a - the action of the JMenuItem

Since:

1.3


JMenuItem

public JMenuItem(String text, Icon icon)

Creates a JMenuItem with the specified text and icon.

Parameters:

text - the text of the JMenuItem

icon - the icon of the JMenuItem


JMenuItem

public JMenuItem(String text, int mnemonic)

Creates a JMenuItem with the specified text and keyboard mnemonic.

Parameters:

text - the text of the JMenuItem

mnemonic - the keyboard mnemonic for the JMenuItem

Method Detail

init

protected void init(String text, Icon icon)

Initializes the menu item with the specified text and icon.

Overrides:

[init](../../javax/swing/AbstractButton.html#init%28java.lang.String, javax.swing.Icon%29) in class [AbstractButton](../../javax/swing/AbstractButton.html "class in javax.swing")

Parameters:

text - the text of the JMenuItem

icon - the icon of the JMenuItem


setUI

public void setUI(MenuItemUI ui)

Sets the look and feel object that renders this component.

Parameters:

ui - the JMenuItemUI L&F object

See Also:

UIDefaults.getUI(javax.swing.JComponent)


updateUI

public void updateUI()

Resets the UI property with a value from the current look and feel.

Overrides:

[updateUI](../../javax/swing/AbstractButton.html#updateUI%28%29) in class [AbstractButton](../../javax/swing/AbstractButton.html "class in javax.swing")

See Also:

JComponent.updateUI()


getUIClassID

public String getUIClassID()

Returns the suffix used to construct the name of the L&F class used to render this component.

Overrides:

[getUIClassID](../../javax/swing/JComponent.html#getUIClassID%28%29) in class [JComponent](../../javax/swing/JComponent.html "class in javax.swing")

Returns:

the string "MenuItemUI"

See Also:

JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)


setArmed

public void setArmed(boolean b)

Identifies the menu item as "armed". If the mouse button is released while it is over this item, the menu's action event will fire. If the mouse button is released elsewhere, the event will not fire and the menu item will be disarmed.

Parameters:

b - true to arm the menu item so it can be selected


isArmed

public boolean isArmed()

Returns whether the menu item is "armed".

Returns:

true if the menu item is armed, and it can be selected

See Also:

setArmed(boolean)


setEnabled

public void setEnabled(boolean b)

Enables or disables the menu item.

Overrides:

[setEnabled](../../javax/swing/AbstractButton.html#setEnabled%28boolean%29) in class [AbstractButton](../../javax/swing/AbstractButton.html "class in javax.swing")

Parameters:

b - true to enable the item

See Also:

Component.isEnabled(), Component.isLightweight()


setAccelerator

public void setAccelerator(KeyStroke keyStroke)

Sets the key combination which invokes the menu item's action listeners without navigating the menu hierarchy. It is the UI's responsibility to install the correct action. Note that when the keyboard accelerator is typed, it will work whether or not the menu is currently displayed.

Parameters:

keyStroke - the KeyStroke which will serve as an accelerator


getAccelerator

public KeyStroke getAccelerator()

Returns the KeyStroke which serves as an accelerator for the menu item.

Returns:

a KeyStroke object identifying the accelerator key


configurePropertiesFromAction

protected void configurePropertiesFromAction(Action a)

Factory method which sets the ActionEvent source's properties according to values from the Action instance. The properties which are set may differ for subclasses. By default, this method sets the same properties asAbstractButton.configurePropertiesFromAction(), plusAccelerator.

Overrides:

[configurePropertiesFromAction](../../javax/swing/AbstractButton.html#configurePropertiesFromAction%28javax.swing.Action%29) in class [AbstractButton](../../javax/swing/AbstractButton.html "class in javax.swing")

Parameters:

a - the Action from which to get the properties, or null

Since:

1.3

See Also:

Action


createActionPropertyChangeListener

protected PropertyChangeListener createActionPropertyChangeListener(Action a)

Factory method which creates the PropertyChangeListener used to update the ActionEvent source as properties change on its Action instance. Subclasses may override this in order to provide their ownPropertyChangeListener if the set of properties which should be kept up to date differs.

Note that PropertyChangeListeners should avoid holding strong references to the ActionEvent source, as this may hinder garbage collection of the ActionEvent source and all components in its containment hierarchy.

Overrides:

[createActionPropertyChangeListener](../../javax/swing/AbstractButton.html#createActionPropertyChangeListener%28javax.swing.Action%29) in class [AbstractButton](../../javax/swing/AbstractButton.html "class in javax.swing")

Parameters:

a - the Action from which to get the properties, or null

Since:

1.3

See Also:

Action


processMouseEvent

public void processMouseEvent(MouseEvent e, MenuElement[] path, MenuSelectionManager manager)

Processes a mouse event forwarded from theMenuSelectionManager and changes the menu selection, if necessary, by using theMenuSelectionManager's API.

Note: you do not have to forward the event to sub-components. This is done automatically by the MenuSelectionManager.

Specified by:

[processMouseEvent](../../javax/swing/MenuElement.html#processMouseEvent%28java.awt.event.MouseEvent, javax.swing.MenuElement[], javax.swing.MenuSelectionManager%29) in interface [MenuElement](../../javax/swing/MenuElement.html "interface in javax.swing")

Parameters:

e - a MouseEvent

path - the MenuElement path array

manager - the MenuSelectionManager


processKeyEvent

public void processKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)

Processes a key event forwarded from the MenuSelectionManager and changes the menu selection, if necessary, by using MenuSelectionManager's API.

Note: you do not have to forward the event to sub-components. This is done automatically by the MenuSelectionManager.

Specified by:

[processKeyEvent](../../javax/swing/MenuElement.html#processKeyEvent%28java.awt.event.KeyEvent, javax.swing.MenuElement[], javax.swing.MenuSelectionManager%29) in interface [MenuElement](../../javax/swing/MenuElement.html "interface in javax.swing")

Parameters:

e - a KeyEvent

path - the MenuElement path array

manager - the MenuSelectionManager


processMenuDragMouseEvent

public void processMenuDragMouseEvent(MenuDragMouseEvent e)

Handles mouse drag in a menu.

Parameters:

e - a MenuDragMouseEvent object


processMenuKeyEvent

public void processMenuKeyEvent(MenuKeyEvent e)

Handles a keystroke in a menu.

Parameters:

e - a MenuKeyEvent object


fireMenuDragMouseEntered

protected void fireMenuDragMouseEntered(MenuDragMouseEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuMouseDragEvent

See Also:

EventListenerList


fireMenuDragMouseExited

protected void fireMenuDragMouseExited(MenuDragMouseEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuDragMouseEvent

See Also:

EventListenerList


fireMenuDragMouseDragged

protected void fireMenuDragMouseDragged(MenuDragMouseEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuDragMouseEvent

See Also:

EventListenerList


fireMenuDragMouseReleased

protected void fireMenuDragMouseReleased(MenuDragMouseEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuDragMouseEvent

See Also:

EventListenerList


fireMenuKeyPressed

protected void fireMenuKeyPressed(MenuKeyEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuKeyEvent

See Also:

EventListenerList


fireMenuKeyReleased

protected void fireMenuKeyReleased(MenuKeyEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuKeyEvent

See Also:

EventListenerList


fireMenuKeyTyped

protected void fireMenuKeyTyped(MenuKeyEvent event)

Notifies all listeners that have registered interest for notification on this event type.

Parameters:

event - a MenuKeyEvent

See Also:

EventListenerList


public void menuSelectionChanged(boolean isIncluded)

Called by the MenuSelectionManager when theMenuElement is selected or unselected.

Specified by:

[menuSelectionChanged](../../javax/swing/MenuElement.html#menuSelectionChanged%28boolean%29) in interface [MenuElement](../../javax/swing/MenuElement.html "interface in javax.swing")

Parameters:

isIncluded - true if this menu item is on the part of the menu path that changed, false if this menu is part of the a menu path that changed, but this particular part of that path is still the same

See Also:

MenuSelectionManager.setSelectedPath(MenuElement[])


getSubElements

public MenuElement[] getSubElements()

This method returns an array containing the sub-menu components for this menu component.

Specified by:

[getSubElements](../../javax/swing/MenuElement.html#getSubElements%28%29) in interface [MenuElement](../../javax/swing/MenuElement.html "interface in javax.swing")

Returns:

an array of MenuElements


getComponent

public Component getComponent()

Returns the java.awt.Component used to paint this object. The returned component will be used to convert events and detect if an event is inside a menu component.

Specified by:

[getComponent](../../javax/swing/MenuElement.html#getComponent%28%29) in interface [MenuElement](../../javax/swing/MenuElement.html "interface in javax.swing")

Returns:

the Component that paints this menu item


addMenuDragMouseListener

public void addMenuDragMouseListener(MenuDragMouseListener l)

Adds a MenuDragMouseListener to the menu item.

Parameters:

l - the MenuDragMouseListener to be added


removeMenuDragMouseListener

public void removeMenuDragMouseListener(MenuDragMouseListener l)

Removes a MenuDragMouseListener from the menu item.

Parameters:

l - the MenuDragMouseListener to be removed


getMenuDragMouseListeners

public MenuDragMouseListener[] getMenuDragMouseListeners()

Returns an array of all the MenuDragMouseListeners added to this JMenuItem with addMenuDragMouseListener().

Returns:

all of the MenuDragMouseListeners added or an empty array if no listeners have been added

Since:

1.4


addMenuKeyListener

public void addMenuKeyListener(MenuKeyListener l)

Adds a MenuKeyListener to the menu item.

Parameters:

l - the MenuKeyListener to be added


removeMenuKeyListener

public void removeMenuKeyListener(MenuKeyListener l)

Removes a MenuKeyListener from the menu item.

Parameters:

l - the MenuKeyListener to be removed


getMenuKeyListeners

public MenuKeyListener[] getMenuKeyListeners()

Returns an array of all the MenuKeyListeners added to this JMenuItem with addMenuKeyListener().

Returns:

all of the MenuKeyListeners added or an empty array if no listeners have been added

Since:

1.4


paramString

protected String paramString()

Returns a string representation of this JMenuItem. 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.

Overrides:

[paramString](../../javax/swing/AbstractButton.html#paramString%28%29) in class [AbstractButton](../../javax/swing/AbstractButton.html "class in javax.swing")

Returns:

a string representation of this JMenuItem


getAccessibleContext

public AccessibleContext getAccessibleContext()

Returns the AccessibleContext associated with this JMenuItem. For JMenuItems, the AccessibleContext takes the form of an AccessibleJMenuItem. A new AccessibleJMenuItme instance is created if necessary.

Specified by:

[getAccessibleContext](../../javax/accessibility/Accessible.html#getAccessibleContext%28%29) in interface [Accessible](../../javax/accessibility/Accessible.html "interface in javax.accessibility")

Overrides:

[getAccessibleContext](../../javax/swing/JComponent.html#getAccessibleContext%28%29) in class [JComponent](../../javax/swing/JComponent.html "class in javax.swing")

Returns:

an AccessibleJMenuItem that serves as the AccessibleContext of this JMenuItem



Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.