Uses of Interface javax.swing.MenuElement (Java SE 10 & JDK 10 )

## Uses of Interface
javax.swing.MenuElement

- Packages that use MenuElement
  Package | Description
  --- | ---
  javax.swing | Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
  javax.swing.event | Provides for events fired by Swing components.
  javax.swing.plaf.basic | Provides user interface objects built according to the Basic look and feel.
  javax.swing.plaf.metal | Provides user interface objects built according to the Java look and feel (once codenamed Metal), which is the default look and feel.

- - ### Uses of MenuElement in javax.swing

    Classes in javax.swing that implement MenuElement
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `JCheckBoxMenuItem` | A menu item that can be selected or deselected.
    `class` | `JMenu` | An implementation of a menu -- a popup window containing `JMenuItem`s that is displayed when the user selects an item on the `JMenuBar`.
    `class` | `JMenuBar` | An implementation of a menu bar.
    `class` | `JMenuItem` | An implementation of an item in a menu.
    `class` | `JPopupMenu` | An implementation of a popup menu -- a small window that pops up and displays a series of choices.
    `class` | `JRadioButtonMenuItem` | An implementation of a radio button menu item.

    Methods in javax.swing that return MenuElement
    Modifier and Type | Method | Description
    --- | --- | ---
    `MenuElement[]` | MenuSelectionManager.`getSelectedPath()` | Returns the path to the currently selected menu item
    `MenuElement[]` | JMenu.`getSubElements()` | Returns an array of `MenuElement`s containing the submenu for this menu component.
    `MenuElement[]` | JMenuBar.`getSubElements()` | Implemented to be a `MenuElement` -- returns the menus in this menu bar.
    `MenuElement[]` | JMenuItem.`getSubElements()` | This method returns an array containing the sub-menu components for this menu component.
    `MenuElement[]` | JPopupMenu.`getSubElements()` | Returns an array of `MenuElement`s containing the submenu for this menu component.
    `MenuElement[]` | MenuElement.`getSubElements()` | This method should return an array containing the sub-elements for the receiving menu element.

    Methods in javax.swing with parameters of type MenuElement
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | JMenuBar.`processKeyEvent​(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)` | Implemented to be a `MenuElement` -- does nothing.
    `void` | JMenuItem.`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.
    `void` | JPopupMenu.`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.
    `void` | MenuElement.`processKeyEvent​(KeyEvent event, MenuElement[] path, MenuSelectionManager manager)` | Process a key event.
    `void` | JMenuBar.`processMouseEvent​(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)` | Implemented to be a `MenuElement` -- does nothing.
    `void` | JMenuItem.`processMouseEvent​(MouseEvent e, MenuElement[] path, MenuSelectionManager manager)` | Processes a mouse event forwarded from the `MenuSelectionManager` and changes the menu selection, if necessary, by using the `MenuSelectionManager`'s API.
    `void` | JPopupMenu.`processMouseEvent​(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)` | This method is required to conform to the `MenuElement` interface, but it not implemented.
    `void` | MenuElement.`processMouseEvent​(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)` | Processes a mouse event.
    `void` | MenuSelectionManager.`setSelectedPath​(MenuElement[] path)` | Changes the selection in the menu hierarchy.

  - ### Uses of MenuElement in javax.swing.event

    Methods in javax.swing.event that return MenuElement
    Modifier and Type | Method | Description
    --- | --- | ---
    `MenuElement[]` | MenuDragMouseEvent.`getPath()` | Returns the path to the selected menu item.
    `MenuElement[]` | MenuKeyEvent.`getPath()` | Returns the path to the menu item referenced by this event.

    Constructors in javax.swing.event with parameters of type MenuElement
    Constructor | Description
    --- | ---
    `MenuDragMouseEvent​(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, MenuElement[] p, MenuSelectionManager m)` | Constructs a MenuDragMouseEvent object.
    `MenuDragMouseEvent​(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, MenuElement[] p, MenuSelectionManager m)` | Constructs a MenuDragMouseEvent object.
    `MenuKeyEvent​(Component source, int id, long when, int modifiers, int keyCode, char keyChar, MenuElement[] p, MenuSelectionManager m)` | Constructs a MenuKeyEvent object.

  - ### Uses of MenuElement in javax.swing.plaf.basic

    Classes in javax.swing.plaf.basic that implement MenuElement
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BasicComboPopup` | This is a basic implementation of the `ComboPopup` interface.
    `class` | `BasicInternalFrameTitlePane.SystemMenuBar` | This class should be treated as a "protected" inner class.

    Methods in javax.swing.plaf.basic that return MenuElement
    Modifier and Type | Method | Description
    --- | --- | ---
    `MenuElement[]` | BasicMenuItemUI.`getPath()` | Returns a menu element path.

    Methods in javax.swing.plaf.basic with parameters of type MenuElement
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | BasicCheckBoxMenuItemUI.`processMouseEvent​(JMenuItem item, MouseEvent e, MenuElement[] path, MenuSelectionManager manager)` | Invoked when mouse event occurs.
    `void` | BasicRadioButtonMenuItemUI.`processMouseEvent​(JMenuItem item, MouseEvent e, MenuElement[] path, MenuSelectionManager manager)` | Invoked when mouse event occurs.

  - ### Uses of MenuElement in javax.swing.plaf.metal

    Classes in javax.swing.plaf.metal that implement MenuElement
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MetalComboBoxUI.MetalComboPopup` | Deprecated. As of Java 2 platform v1.4.