## Uses of Class
javax.swing.plaf.ButtonUI

- Packages that use ButtonUI
  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.plaf | Provides one interface and many abstract classes that Swing uses to provide its pluggable look-and-feel capabilities.
  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.
  javax.swing.plaf.multi | Provides user interface objects that combine two or more look and feels.
  javax.swing.plaf.synth | Synth is a skinnable look and feel in which all painting is delegated.

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

    Methods in javax.swing that return ButtonUI
    Modifier and Type | Method | Description
    --- | --- | ---
    `ButtonUI` | AbstractButton.`getUI()` Returns the L&F object that renders this component.

    Methods in javax.swing with parameters of type ButtonUI
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | AbstractButton.`setUI(ButtonUI ui)` Sets the L&F object that renders this component.

  - ### Uses of ButtonUI in javax.swing.plaf

    Subclasses of ButtonUI in javax.swing.plaf
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MenuItemUI` Pluggable look and feel interface for JMenuItem.

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

    Subclasses of ButtonUI in javax.swing.plaf.basic
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BasicButtonUI` BasicButton implementation
    `class` | `BasicCheckBoxMenuItemUI` BasicCheckboxMenuItem implementation
    `class` | `BasicCheckBoxUI` CheckboxUI implementation for BasicCheckboxUI
    `class` | `BasicMenuItemUI` BasicMenuItem implementation
    `class` | `BasicMenuUI` A default L&F implementation of MenuUI.
    `class` | `BasicRadioButtonMenuItemUI` BasicRadioButtonMenuItem implementation
    `class` | `BasicRadioButtonUI` RadioButtonUI implementation for BasicRadioButtonUI
    `class` | `BasicToggleButtonUI` BasicToggleButton implementation

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

    Subclasses of ButtonUI in javax.swing.plaf.metal
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MetalButtonUI` MetalButtonUI implementation
    `class` | `MetalCheckBoxUI` CheckboxUI implementation for MetalCheckboxUI
    `class` | `MetalRadioButtonUI` RadioButtonUI implementation for MetalRadioButtonUI
    `class` | `MetalToggleButtonUI` MetalToggleButton implementation

  - ### Uses of ButtonUI in javax.swing.plaf.multi

    Subclasses of ButtonUI in javax.swing.plaf.multi
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MultiButtonUI` A multiplexing UI used to combine `ButtonUI`s.
    `class` | `MultiMenuItemUI` A multiplexing UI used to combine `MenuItemUI`s.

  - ### Uses of ButtonUI in javax.swing.plaf.synth

    Subclasses of ButtonUI in javax.swing.plaf.synth
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SynthButtonUI` Provides the Synth L&F UI delegate for `JButton`.
    `class` | `SynthCheckBoxMenuItemUI` Provides the Synth L&F UI delegate for `JCheckBoxMenuItem`.
    `class` | `SynthCheckBoxUI` Provides the Synth L&F UI delegate for `JCheckBox`.
    `class` | `SynthMenuItemUI` Provides the Synth L&F UI delegate for `JMenuItem`.
    `class` | `SynthMenuUI` Provides the Synth L&F UI delegate for `JMenu`.
    `class` | `SynthRadioButtonMenuItemUI` Provides the Synth L&F UI delegate for `JRadioButtonMenuItem`.
    `class` | `SynthRadioButtonUI` Provides the Synth L&F UI delegate for `JRadioButton`.
    `class` | `SynthToggleButtonUI` Provides the Synth L&F UI delegate for `JToggleButton`.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.