Module javafx.controls
Package javafx.scene.control.skin

## Class MenuButtonSkin

- java.lang.Object
- - javafx.scene.control.SkinBase<C>
  - - javafx.scene.control.skin.MenuButtonSkinBase<MenuButton>
    - - javafx.scene.control.skin.MenuButtonSkin

- All Implemented Interfaces:
    `Skin<MenuButton>`

      public class MenuButtonSkin
      extends MenuButtonSkinBase<MenuButton>

  Default skin implementation for the `MenuButton` control.
  Since:
    9
  See Also:
    `MenuButton`

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MenuButtonSkin​(MenuButton control)` | Creates a new MenuButtonSkin instance, installing the necessary child nodes into the Control `children` list, as well as the necessary input mappings for handling key, mouse, etc events.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `dispose()` | Called by a Skinnable when the Skin is replaced on the Skinnable.
    `Object` | `queryAccessibleAttribute​(AccessibleAttribute attribute, Object... parameters)` | This method is called by the assistive technology to request the value for an attribute.

    - ### Methods inherited from class javafx.scene.control.skin.MenuButtonSkinBase

      `computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, layoutChildren`

    - ### Methods inherited from class javafx.scene.control.SkinBase

      `computeBaselineOffset, consumeMouseEvents, executeAccessibleAction, getChildren, getClassCssMetaData, getCssMetaData, getNode, getSkinnable, layoutInArea, layoutInArea, layoutInArea, positionInArea, positionInArea, pseudoClassStateChanged, registerChangeListener, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, unregisterChangeListeners`

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### MenuButtonSkin

          public MenuButtonSkin​(MenuButton control)

      Creates a new MenuButtonSkin instance, installing the necessary child nodes into the Control `children` list, as well as the necessary input mappings for handling key, mouse, etc events.
      Parameters:
        `control` - The control that this skin should be installed onto.

  - ### Method Detail

    - #### dispose

          public void dispose()

      Called by a Skinnable when the Skin is replaced on the Skinnable. This method allows a Skin to implement any logic necessary to clean up itself after the Skin is no longer needed. It may be used to release native resources. The methods `Skin.getSkinnable()` and `Skin.getNode()` should return null following a call to dispose. Calling dispose twice has no effect.
      Specified by:
        `dispose` in interface `Skin<MenuButton>`
      Overrides:
        `dispose` in class `MenuButtonSkinBase<MenuButton>`

    - #### queryAccessibleAttribute

          public Object queryAccessibleAttribute​(AccessibleAttribute attribute,
                                                 Object... parameters)

      This method is called by the assistive technology to request the value for an attribute.

      This method is commonly overridden by subclasses to implement attributes that are required for a specific role.
      If a particular attribute is not handled, the superclass implementation must be called.

      Overrides:
        `queryAccessibleAttribute` in class `SkinBase<MenuButton>`
      Parameters:
        `attribute` - the requested attribute
        `parameters` - optional list of parameters
      Returns:
        the value for the requested attribute
      See Also:
        `AccessibleAttribute`, `Node.queryAccessibleAttribute(javafx.scene.AccessibleAttribute, java.lang.Object...)`