Module java.desktop
Package javax.swing.plaf.metal

## Class MetalMenuBarUI

- java.lang.Object
- - javax.swing.plaf.ComponentUI
  - - javax.swing.plaf.MenuBarUI
    - - javax.swing.plaf.basic.BasicMenuBarUI
      - - javax.swing.plaf.metal.MetalMenuBarUI

-     public class MetalMenuBarUI
      extends BasicMenuBarUI

  Metal implementation of `MenuBarUI`. This class is responsible for providing the metal look and feel for `JMenuBar`s.
  Since:
    1.5
  See Also:
    `MenuBarUI`

- - ### Field Summary

    - ### Fields declared in class javax.swing.plaf.basic.BasicMenuBarUI

      `changeListener, containerListener, menuBar`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MetalMenuBarUI()` |

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `static ComponentUI` | `createUI​(JComponent x)` | Creates the `ComponentUI` implementation for the passed in component.
    `void` | `installUI​(JComponent c)` | Configures the specified component appropriate for the metal look and feel.
    `void` | `uninstallUI​(JComponent c)` | Reverses configuration which was done on the specified component during `installUI`.
    `void` | `update​(Graphics g, JComponent c)` | If necessary paints the background of the component, then invokes `paint`.

    - ### Methods declared in class javax.swing.plaf.basic.BasicMenuBarUI

      `createChangeListener, createContainerListener, installDefaults, installKeyboardActions, installListeners, uninstallDefaults, uninstallKeyboardActions, uninstallListeners`

    - ### Methods declared in class javax.swing.plaf.ComponentUI

      `contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, paint`

    - ### Methods declared in class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### MetalMenuBarUI

          public MetalMenuBarUI()

  - ### Method Detail

    - #### createUI

          public static ComponentUI createUI​(JComponent x)

      Creates the `ComponentUI` implementation for the passed in component.
      Parameters:
        `x` - JComponent to create the ComponentUI implementation for
      Returns:
        ComponentUI implementation for `x`
      Throws:
        `NullPointerException` - if `x` is null

    - #### installUI

          public void installUI​(JComponent c)

      Configures the specified component appropriate for the metal look and feel.
      Overrides:
        `installUI` in class `ComponentUI`
      Parameters:
        `c` - the component where this UI delegate is being installed
      Throws:
        `NullPointerException` - if `c` is null.
      See Also:
        `ComponentUI.uninstallUI(javax.swing.JComponent)`, `JComponent.setUI(javax.swing.plaf.ComponentUI)`, `JComponent.updateUI()`

    - #### uninstallUI

          public void uninstallUI​(JComponent c)

      Reverses configuration which was done on the specified component during `installUI`.
      Overrides:
        `uninstallUI` in class `ComponentUI`
      Parameters:
        `c` - the component where this UI delegate is being installed
      Throws:
        `NullPointerException` - if `c` is null.
      See Also:
        `ComponentUI.installUI(javax.swing.JComponent)`, `JComponent.updateUI()`

    - #### update

          public void update​(Graphics g,
                             JComponent c)

      If necessary paints the background of the component, then invokes `paint`.
      Overrides:
        `update` in class `ComponentUI`
      Parameters:
        `g` - Graphics to paint to
        `c` - JComponent painting on
      Throws:
        `NullPointerException` - if `g` or `c` is null
      Since:
        1.5
      See Also:
        `ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)`, `ComponentUI.paint(java.awt.Graphics, javax.swing.JComponent)`