Uses of Interface javax.swing.Icon (Java Platform SE 8 )
Date: 2026-01-21

## Uses of Interface
javax.swing.Icon

- Packages that use Icon
  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.border | Provides classes and interface for drawing specialized borders around a Swing component.
  javax.swing.colorchooser | Contains classes and interfaces used by the `JColorChooser` component.
  javax.swing.filechooser | Contains classes and interfaces used by the `JFileChooser` component.
  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.nimbus | Provides user interface objects built according to the cross-platform Nimbus look and feel.
  javax.swing.plaf.synth | Synth is a skinnable look and feel in which all painting is delegated.
  javax.swing.text | Provides classes and interfaces that deal with editable and noneditable text components.
  javax.swing.text.html | Provides the class `HTMLEditorKit` and supporting classes for creating HTML text editors.
  javax.swing.tree | Provides classes and interfaces for dealing with `javax.swing.JTree`.

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

    Classes in javax.swing that implement Icon
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ImageIcon` An implementation of the Icon interface that paints Icons from Images.

    Fields in javax.swing declared as Icon
    Modifier and Type | Field and Description
    --- | ---
    `protected Icon` | JInternalFrame.`frameIcon` The icon shown in the top-left corner of this internal frame.
    `protected Icon` | JOptionPane.`icon` Icon used in pane.

    Methods in javax.swing that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | JLabel.`getDisabledIcon()` Returns the icon used by the label when it's disabled.
    `Icon` | AbstractButton.`getDisabledIcon()` Returns the icon used by the button when it's disabled.
    `Icon` | LookAndFeel.`getDisabledIcon(JComponent component, Icon icon)` Returns an `Icon` with a disabled appearance.
    `Icon` | JTabbedPane.`getDisabledIconAt(int index)` Returns the tab disabled icon at `index`.
    `Icon` | AbstractButton.`getDisabledSelectedIcon()` Returns the icon used by the button when it's disabled and selected.
    `Icon` | LookAndFeel.`getDisabledSelectedIcon(JComponent component, Icon icon)` Returns an `Icon` for use by disabled components that are also selected.
    `Icon` | JInternalFrame.`getFrameIcon()` Returns the image displayed in the title bar of this internal frame (usually in the top-left corner).
    `Icon` | JOptionPane.`getIcon()` Returns the icon this pane displays.
    `Icon` | JLabel.`getIcon()` Returns the graphic image (glyph, icon) that the label displays.
    `Icon` | AbstractButton.`getIcon()` Returns the default icon.
    `Icon` | JFileChooser.`getIcon(File f)` Returns the icon for this file or type of file, depending on the system.
    `static Icon` | UIManager.`getIcon(Object key)` Returns an `Icon` from the defaults.
    `Icon` | UIDefaults.`getIcon(Object key)` If the value of `key` is an `Icon` return it, otherwise return `null`.
    `static Icon` | UIManager.`getIcon(Object key, Locale l)` Returns an `Icon` from the defaults that is appropriate for the given locale.
    `Icon` | UIDefaults.`getIcon(Object key, Locale l)` If the value of `key` for the given `Locale` is an `Icon` return it, otherwise return `null`.
    `Icon` | JTabbedPane.`getIconAt(int index)` Returns the tab icon at `index`.
    `Icon` | AbstractButton.`getPressedIcon()` Returns the pressed icon for the button.
    `Icon` | AbstractButton.`getRolloverIcon()` Returns the rollover icon for the button.
    `Icon` | AbstractButton.`getRolloverSelectedIcon()` Returns the rollover selection icon for the button.
    `Icon` | AbstractButton.`getSelectedIcon()` Returns the selected icon for the button.
    `Icon` | TransferHandler.`getVisualRepresentation(Transferable t)` Returns an object that establishes the look of a transfer.

    Methods in javax.swing with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `void` | JTabbedPane.`addTab(String title, Icon icon, Component component)` Adds a `component` represented by a `title` and/or `icon`, either of which can be `null`.
    `void` | JTabbedPane.`addTab(String title, Icon icon, Component component, String tip)` Adds a `component` and `tip` represented by a `title` and/or `icon`, either of which can be `null`.
    `static MatteBorder` | BorderFactory.`createMatteBorder(int top, int left, int bottom, int right, Icon tileIcon)` Creates a matte-look border that consists of multiple tiles of a specified icon.
    `Icon` | LookAndFeel.`getDisabledIcon(JComponent component, Icon icon)` Returns an `Icon` with a disabled appearance.
    `Icon` | LookAndFeel.`getDisabledSelectedIcon(JComponent component, Icon icon)` Returns an `Icon` for use by disabled components that are also selected.
    `int` | JTabbedPane.`indexOfTab(Icon icon)` Returns the first tab index with a given `icon`, or -1 if no tab has this icon.
    `protected void` | AbstractButton.`init(String text, Icon icon)`
    `protected void` | JMenuItem.`init(String text, Icon icon)` Initializes the menu item with the specified text and icon.
    `void` | JTextPane.`insertIcon(Icon g)` Inserts an icon into the document as a replacement for the currently selected content.
    `void` | JTabbedPane.`insertTab(String title, Icon icon, Component component, String tip, int index)` Inserts a new tab for the given component, at the given index, represented by the given title and/or icon, either of which may be `null`.
    `static String` | SwingUtilities.`layoutCompoundLabel(FontMetrics fm, String text, Icon icon, int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap)` Compute and return the location of the icons origin, the location of origin of the text baseline, and a possibly clipped version of the compound labels string.
    `static String` | SwingUtilities.`layoutCompoundLabel(JComponent c, FontMetrics fm, String text, Icon icon, int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap)` Compute and return the location of the icons origin, the location of origin of the text baseline, and a possibly clipped version of the compound labels string.
    `void` | JLabel.`setDisabledIcon(Icon disabledIcon)` Set the icon to be displayed if this JLabel is "disabled" (JLabel.setEnabled(false)).
    `void` | AbstractButton.`setDisabledIcon(Icon disabledIcon)` Sets the disabled icon for the button.
    `void` | JTabbedPane.`setDisabledIconAt(int index, Icon disabledIcon)` Sets the disabled icon at `index` to `icon` which can be `null`.
    `void` | AbstractButton.`setDisabledSelectedIcon(Icon disabledSelectedIcon)` Sets the disabled selection icon for the button.
    `void` | JInternalFrame.`setFrameIcon(Icon icon)` Sets an image to be displayed in the titlebar of this internal frame (usually in the top-left corner).
    `void` | JOptionPane.`setIcon(Icon newIcon)` Sets the icon to display.
    `void` | JLabel.`setIcon(Icon icon)` Defines the icon this component will display.
    `void` | AbstractButton.`setIcon(Icon defaultIcon)` Sets the button's default icon.
    `void` | JTabbedPane.`setIconAt(int index, Icon icon)` Sets the icon at `index` to `icon` which can be `null`.
    `void` | AbstractButton.`setPressedIcon(Icon pressedIcon)` Sets the pressed icon for the button.
    `void` | AbstractButton.`setRolloverIcon(Icon rolloverIcon)` Sets the rollover icon for the button.
    `void` | AbstractButton.`setRolloverSelectedIcon(Icon rolloverSelectedIcon)` Sets the rollover selected icon for the button.
    `void` | AbstractButton.`setSelectedIcon(Icon selectedIcon)` Sets the selected icon for the button.
    `static int` | JOptionPane.`showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon)` Brings up a dialog with a specified icon, where the number of choices is determined by the `optionType` parameter.
    `static Object` | JOptionPane.`showInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue)` Prompts the user for input in a blocking dialog where the initial selection, possible selections, and all other options can be specified.
    `static int` | JOptionPane.`showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon)` Brings up an internal dialog panel with a specified icon, where the number of choices is determined by the `optionType` parameter.
    `static Object` | JOptionPane.`showInternalInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue)` Prompts the user for input in a blocking internal dialog where the initial selection, possible selections, and all other options can be specified.
    `static void` | JOptionPane.`showInternalMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)` Brings up an internal dialog panel displaying a message, specifying all parameters.
    `static int` | JOptionPane.`showInternalOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue)` Brings up an internal dialog panel with a specified icon, where the initial choice is determined by the `initialValue` parameter and the number of choices is determined by the `optionType` parameter.
    `static void` | JOptionPane.`showMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)` Brings up a dialog displaying a message, specifying all parameters.
    `static int` | JOptionPane.`showOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue)` Brings up a dialog with a specified icon, where the initial choice is determined by the `initialValue` parameter and the number of choices is determined by the `optionType` parameter.

    Constructors in javax.swing with parameters of type Icon
    Constructor and Description
    `AbstractAction(String name, Icon icon)` Creates an `Action` with the specified name and small icon.
    `JButton(Icon icon)` Creates a button with an icon.
    `JButton(String text, Icon icon)` Creates a button with initial text and an icon.
    `JCheckBox(Icon icon)` Creates an initially unselected check box with an icon.
    `JCheckBox(Icon icon, boolean selected)` Creates a check box with an icon and specifies whether or not it is initially selected.
    `JCheckBox(String text, Icon icon)` Creates an initially unselected check box with the specified text and icon.
    `JCheckBox(String text, Icon icon, boolean selected)` Creates a check box with text and icon, and specifies whether or not it is initially selected.
    `JCheckBoxMenuItem(Icon icon)` Creates an initially unselected check box menu item with an icon.
    `JCheckBoxMenuItem(String text, Icon icon)` Creates an initially unselected check box menu item with the specified text and icon.
    `JCheckBoxMenuItem(String text, Icon icon, boolean b)` Creates a check box menu item with the specified text, icon, and selection state.
    `JLabel(Icon image)` Creates a `JLabel` instance with the specified image.
    `JLabel(Icon image, int horizontalAlignment)` Creates a `JLabel` instance with the specified image and horizontal alignment.
    `JLabel(String text, Icon icon, int horizontalAlignment)` Creates a `JLabel` instance with the specified text, image, and horizontal alignment.
    `JMenuItem(Icon icon)` Creates a `JMenuItem` with the specified icon.
    `JMenuItem(String text, Icon icon)` Creates a `JMenuItem` with the specified text and icon.
    `JOptionPane(Object message, int messageType, int optionType, Icon icon)` Creates an instance of `JOptionPane` to display a message with the specified message type, options, and icon.
    `JOptionPane(Object message, int messageType, int optionType, Icon icon, Object[] options)` Creates an instance of `JOptionPane` to display a message with the specified message type, icon, and options.
    `JOptionPane(Object message, int messageType, int optionType, Icon icon, Object[] options, Object initialValue)` Creates an instance of `JOptionPane` to display a message with the specified message type, icon, and options, with the initially-selected option specified.
    `JRadioButton(Icon icon)` Creates an initially unselected radio button with the specified image but no text.
    `JRadioButton(Icon icon, boolean selected)` Creates a radio button with the specified image and selection state, but no text.
    `JRadioButton(String text, Icon icon)` Creates a radio button that has the specified text and image, and that is initially unselected.
    `JRadioButton(String text, Icon icon, boolean selected)` Creates a radio button that has the specified text, image, and selection state.
    `JRadioButtonMenuItem(Icon icon)` Creates a `JRadioButtonMenuItem` with an icon.
    `JRadioButtonMenuItem(Icon icon, boolean selected)` Creates a radio button menu item with the specified image and selection state, but no text.
    `JRadioButtonMenuItem(String text, Icon icon)` Creates a radio button menu item with the specified text and `Icon`.
    `JRadioButtonMenuItem(String text, Icon icon, boolean selected)` Creates a radio button menu item that has the specified text, image, and selection state.
    `JToggleButton(Icon icon)` Creates an initially unselected toggle button with the specified image but no text.
    `JToggleButton(Icon icon, boolean selected)` Creates a toggle button with the specified image and selection state, but no text.
    `JToggleButton(String text, Icon icon)` Creates a toggle button that has the specified text and image, and that is initially unselected.
    `JToggleButton(String text, Icon icon, boolean selected)` Creates a toggle button with the specified text, image, and selection state.

  - ### Uses of Icon in javax.swing.border

    Fields in javax.swing.border declared as Icon
    Modifier and Type | Field and Description
    --- | ---
    `protected Icon` | MatteBorder.`tileIcon`

    Methods in javax.swing.border that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | MatteBorder.`getTileIcon()` Returns the icon used for tiling the border or null if a solid color is being used.

    Constructors in javax.swing.border with parameters of type Icon
    Constructor and Description
    `MatteBorder(Icon tileIcon)` Creates a matte border with the specified tile icon.
    `MatteBorder(Insets borderInsets, Icon tileIcon)` Creates a matte border with the specified insets and tile icon.
    `MatteBorder(int top, int left, int bottom, int right, Icon tileIcon)` Creates a matte border with the specified insets and tile icon.

  - ### Uses of Icon in javax.swing.colorchooser

    Methods in javax.swing.colorchooser that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `abstract Icon` | AbstractColorChooserPanel.`getLargeDisplayIcon()` Returns the large display icon for the panel.
    `abstract Icon` | AbstractColorChooserPanel.`getSmallDisplayIcon()` Returns the small display icon for the panel.

  - ### Uses of Icon in javax.swing.filechooser

    Methods in javax.swing.filechooser that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | FileView.`getIcon(File f)` The icon that represents this file in the `JFileChooser`.
    `Icon` | FileSystemView.`getSystemIcon(File f)` Icon for a file, directory, or folder as it would be displayed in a system file browser.

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

    Classes in javax.swing.plaf that implement Icon
    Modifier and Type | Class and Description
    --- | ---
    `class` | `IconUIResource` An Icon wrapper class which implements UIResource.

    Constructors in javax.swing.plaf with parameters of type Icon
    Constructor and Description
    `IconUIResource(Icon delegate)` Creates a UIResource icon object which wraps an existing Icon instance.
    `MatteBorderUIResource(Icon tileIcon)`
    `MatteBorderUIResource(int top, int left, int bottom, int right, Icon tileIcon)`

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

    Fields in javax.swing.plaf.basic declared as Icon
    Modifier and Type | Field and Description
    --- | ---
    `protected Icon` | BasicMenuItemUI.`arrowIcon`
    `protected Icon` | BasicMenuItemUI.`checkIcon`
    `protected Icon` | BasicInternalFrameTitlePane.`closeIcon`
    `protected Icon` | BasicTreeUI.`collapsedIcon`
    `protected Icon` | BasicFileChooserUI.`computerIcon`
    `protected Icon` | BasicFileChooserUI.`detailsViewIcon`
    `protected Icon` | BasicFileChooserUI.`directoryIcon`
    `protected Icon` | BasicTreeUI.`expandedIcon`
    `protected Icon` | BasicFileChooserUI.`fileIcon`
    `protected Icon` | BasicFileChooserUI.`floppyDriveIcon`
    `protected Icon` | BasicFileChooserUI.`hardDriveIcon`
    `protected Icon` | BasicFileChooserUI.`homeFolderIcon`
    `protected Icon` | BasicRadioButtonUI.`icon` The icon.
    `protected Icon` | BasicInternalFrameTitlePane.`iconIcon`
    `protected Icon` | BasicFileChooserUI.`listViewIcon`
    `protected Icon` | BasicInternalFrameTitlePane.`maxIcon`
    `protected Icon` | BasicInternalFrameTitlePane.`minIcon`
    `protected Icon` | BasicFileChooserUI.`newFolderIcon`
    `protected Icon` | BasicFileChooserUI.`upFolderIcon`
    `protected Icon` | BasicFileChooserUI.`viewMenuIcon`

    Fields in javax.swing.plaf.basic with type parameters of type Icon
    Modifier and Type | Field and Description
    --- | ---
    `protected Hashtable<File,Icon>` | BasicFileChooserUI.BasicFileView.`iconCache`

    Methods in javax.swing.plaf.basic that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `static Icon` | BasicIconFactory.`createEmptyFrameIcon()`
    `Icon` | BasicFileChooserUI.BasicFileView.`getCachedIcon(File f)`
    `static Icon` | BasicIconFactory.`getCheckBoxIcon()`
    `static Icon` | BasicIconFactory.`getCheckBoxMenuItemIcon()`
    `Icon` | BasicTreeUI.`getCollapsedIcon()`
    `Icon` | BasicRadioButtonUI.`getDefaultIcon()` Returns the default icon.
    `Icon` | BasicTreeUI.`getExpandedIcon()`
    `protected Icon` | BasicOptionPaneUI.`getIcon()` Returns the icon from the JOptionPane the receiver is providing the look and feel for, or the default icon as returned from `getDefaultIcon`.
    `Icon` | BasicFileChooserUI.BasicFileView.`getIcon(File f)`
    `protected Icon` | BasicTabbedPaneUI.`getIconForTab(int tabIndex)`
    `protected Icon` | BasicOptionPaneUI.`getIconForType(int messageType)` Returns the icon to use for the passed in type.
    `static Icon` | BasicIconFactory.`getMenuArrowIcon()`
    `static Icon` | BasicIconFactory.`getMenuItemArrowIcon()`
    `static Icon` | BasicIconFactory.`getMenuItemCheckIcon()`
    `static Icon` | BasicIconFactory.`getRadioButtonIcon()`
    `static Icon` | BasicIconFactory.`getRadioButtonMenuItemIcon()`

    Methods in javax.swing.plaf.basic with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `void` | BasicFileChooserUI.BasicFileView.`cacheIcon(File f, Icon i)`
    `protected void` | BasicTreeUI.`drawCentered(Component c, Graphics graphics, Icon icon, int x, int y)`
    `protected Dimension` | BasicMenuItemUI.`getPreferredMenuItemSize(JComponent c, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)`
    `protected String` | BasicLabelUI.`layoutCL(JLabel label, FontMetrics fontMetrics, String text, Icon icon, Rectangle viewR, Rectangle iconR, Rectangle textR)` Forwards the call to SwingUtilities.layoutCompoundLabel().
    `protected void` | BasicTabbedPaneUI.`layoutLabel(int tabPlacement, FontMetrics metrics, int tabIndex, String title, Icon icon, Rectangle tabRect, Rectangle iconRect, Rectangle textRect, boolean isSelected)`
    `protected void` | BasicTabbedPaneUI.`paintIcon(Graphics g, int tabPlacement, int tabIndex, Icon icon, Rectangle iconRect, boolean isSelected)`
    `protected void` | BasicMenuItemUI.`paintMenuItem(Graphics g, JComponent c, Icon checkIcon, Icon arrowIcon, Color background, Color foreground, int defaultTextIconGap)`
    `void` | BasicTreeUI.`setCollapsedIcon(Icon newG)`
    `void` | BasicTreeUI.`setExpandedIcon(Icon newG)`

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

    Classes in javax.swing.plaf.metal that implement Icon
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MetalCheckBoxIcon` CheckboxIcon implementation for OrganicCheckBoxUI
    `class` | `MetalComboBoxIcon` This utility class draws the horizontal bars which indicate a MetalComboBox
    `static class` | `MetalIconFactory.FileIcon16` Warning: Serialized objects of this class will not be compatible with future Swing releases.
    `static class` | `MetalIconFactory.FolderIcon16` Warning: Serialized objects of this class will not be compatible with future Swing releases.
    `static class` | `MetalIconFactory.PaletteCloseIcon` Defines an icon for Palette close
    `static class` | `MetalIconFactory.TreeControlIcon` Warning: Serialized objects of this class will not be compatible with future Swing releases.
    `static class` | `MetalIconFactory.TreeFolderIcon` Warning: Serialized objects of this class will not be compatible with future Swing releases.
    `static class` | `MetalIconFactory.TreeLeafIcon`

    Fields in javax.swing.plaf.metal declared as Icon
    Modifier and Type | Field and Description
    --- | ---
    `protected Icon` | MetalComboBoxButton.`comboIcon`
    `protected static Icon` | MetalSliderUI.`horizThumbIcon` A default horizontal thumb `Icon`.
    `protected Icon` | MetalInternalFrameTitlePane.`paletteCloseIcon`
    `protected static Icon` | MetalSliderUI.`vertThumbIcon` A default vertical thumb `Icon`.

    Methods in javax.swing.plaf.metal that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `static Icon` | MetalIconFactory.`getCheckBoxIcon()` Returns a checkbox icon.
    `static Icon` | MetalIconFactory.`getCheckBoxMenuItemIcon()`
    `Icon` | MetalComboBoxButton.`getComboIcon()`
    `Icon` | MetalLookAndFeel.`getDisabledIcon(JComponent component, Icon icon)` Returns an `Icon` with a disabled appearance.
    `Icon` | MetalLookAndFeel.`getDisabledSelectedIcon(JComponent component, Icon icon)` Returns an `Icon` for use by disabled components that are also selected.
    `static Icon` | MetalIconFactory.`getFileChooserDetailViewIcon()`
    `static Icon` | MetalIconFactory.`getFileChooserHomeFolderIcon()`
    `static Icon` | MetalIconFactory.`getFileChooserListViewIcon()`
    `static Icon` | MetalIconFactory.`getFileChooserNewFolderIcon()`
    `static Icon` | MetalIconFactory.`getFileChooserUpFolderIcon()`
    `static Icon` | MetalIconFactory.`getHorizontalSliderThumbIcon()`
    `static Icon` | MetalIconFactory.`getInternalFrameAltMaximizeIcon(int size)`
    `static Icon` | MetalIconFactory.`getInternalFrameCloseIcon(int size)`
    `static Icon` | MetalIconFactory.`getInternalFrameDefaultMenuIcon()`
    `static Icon` | MetalIconFactory.`getInternalFrameMaximizeIcon(int size)`
    `static Icon` | MetalIconFactory.`getInternalFrameMinimizeIcon(int size)`
    `static Icon` | MetalIconFactory.`getMenuArrowIcon()`
    `static Icon` | MetalIconFactory.`getMenuItemArrowIcon()`
    `static Icon` | MetalIconFactory.`getMenuItemCheckIcon()` Returns an icon to be used by `JCheckBoxMenuItem`.
    `static Icon` | MetalIconFactory.`getRadioButtonIcon()`
    `static Icon` | MetalIconFactory.`getRadioButtonMenuItemIcon()`
    `static Icon` | MetalIconFactory.`getTreeComputerIcon()`
    `static Icon` | MetalIconFactory.`getTreeControlIcon(boolean isCollapsed)`
    `static Icon` | MetalIconFactory.`getTreeFloppyDriveIcon()`
    `static Icon` | MetalIconFactory.`getTreeFolderIcon()`
    `static Icon` | MetalIconFactory.`getTreeHardDriveIcon()`
    `static Icon` | MetalIconFactory.`getTreeLeafIcon()`
    `static Icon` | MetalIconFactory.`getVerticalSliderThumbIcon()`

    Methods in javax.swing.plaf.metal with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | MetalLookAndFeel.`getDisabledIcon(JComponent component, Icon icon)` Returns an `Icon` with a disabled appearance.
    `Icon` | MetalLookAndFeel.`getDisabledSelectedIcon(JComponent component, Icon icon)` Returns an `Icon` for use by disabled components that are also selected.
    `void` | MetalComboBoxButton.`setComboIcon(Icon i)`

    Constructors in javax.swing.plaf.metal with parameters of type Icon
    Constructor and Description
    `MetalComboBoxButton(JComboBox cb, Icon i, boolean onlyIcon, CellRendererPane pane, JList list)`
    `MetalComboBoxButton(JComboBox cb, Icon i, CellRendererPane pane, JList list)`

  - ### Uses of Icon in javax.swing.plaf.nimbus

    Methods in javax.swing.plaf.nimbus that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | NimbusLookAndFeel.`getDisabledIcon(JComponent component, Icon icon)`

    Methods in javax.swing.plaf.nimbus with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | NimbusLookAndFeel.`getDisabledIcon(JComponent component, Icon icon)`

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

    Methods in javax.swing.plaf.synth that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `protected Icon` | SynthButtonUI.`getDefaultIcon(AbstractButton b)` Returns the default icon.
    `Icon` | SynthTreeUI.`getExpandedIcon()`
    `protected Icon` | SynthButtonUI.`getIcon(AbstractButton b)` Returns the Icon to use for painting the button.
    `Icon` | SynthStyle.`getIcon(SynthContext context, Object key)` Convenience method to get a specific style property whose value is an Icon.
    `protected Icon` | SynthRadioButtonUI.`getSizingIcon(AbstractButton b)` Returns the Icon used in calculating the preferred/minimum/maximum size.
    `protected Icon` | SynthButtonUI.`getSizingIcon(AbstractButton b)` Returns the Icon used in calculating the preferred/minimum/maximum size.

    Methods in javax.swing.plaf.synth with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | SynthTreeUI.`drawCentered(Component c, Graphics graphics, Icon icon, int x, int y)`
    `Dimension` | SynthGraphicsUtils.`getMaximumSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)` Returns the maximum size needed to properly render an icon and text.
    `Dimension` | SynthGraphicsUtils.`getMinimumSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)` Returns the minimum size needed to properly render an icon and text.
    `protected Dimension` | SynthMenuUI.`getPreferredMenuItemSize(JComponent c, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)`
    `protected Dimension` | SynthMenuItemUI.`getPreferredMenuItemSize(JComponent c, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)`
    `Dimension` | SynthGraphicsUtils.`getPreferredSize(SynthContext ss, Font font, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex)` Returns the preferred size needed to properly render an icon and text.
    `String` | SynthGraphicsUtils.`layoutText(SynthContext ss, FontMetrics fm, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int iconTextGap)` Lays out text and an icon returning, by reference, the location to place the icon and text.
    `void` | SynthGraphicsUtils.`paintText(SynthContext ss, Graphics g, String text, Icon icon, int hAlign, int vAlign, int hTextPosition, int vTextPosition, int iconTextGap, int mnemonicIndex, int textOffset)` Paints an icon and text.

  - ### Uses of Icon in javax.swing.text

    Methods in javax.swing.text that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `static Icon` | StyleConstants.`getIcon(AttributeSet a)` Gets the icon setting from the attribute list.

    Methods in javax.swing.text with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `static void` | StyleConstants.`setIcon(MutableAttributeSet a, Icon c)` Sets the icon attribute.

  - ### Uses of Icon in javax.swing.text.html

    Methods in javax.swing.text.html that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | ImageView.`getLoadingImageIcon()` Returns the icon to use while in the process of loading the image.
    `Icon` | ImageView.`getNoImageIcon()` Returns the icon to use if the image couldn't be found.

  - ### Uses of Icon in javax.swing.tree

    Fields in javax.swing.tree declared as Icon
    Modifier and Type | Field and Description
    --- | ---
    `protected Icon` | DefaultTreeCellRenderer.`closedIcon` Icon used to show non-leaf nodes that aren't expanded.
    `protected Icon` | DefaultTreeCellEditor.`editingIcon` Icon to use when editing.
    `protected Icon` | DefaultTreeCellRenderer.`leafIcon` Icon used to show leaf nodes.
    `protected Icon` | DefaultTreeCellRenderer.`openIcon` Icon used to show non-leaf nodes that are expanded.

    Methods in javax.swing.tree that return Icon
    Modifier and Type | Method and Description
    --- | ---
    `Icon` | DefaultTreeCellRenderer.`getClosedIcon()` Returns the icon used to represent non-leaf nodes that are not expanded.
    `Icon` | DefaultTreeCellRenderer.`getDefaultClosedIcon()` Returns the default icon, for the current laf, that is used to represent non-leaf nodes that are not expanded.
    `Icon` | DefaultTreeCellRenderer.`getDefaultLeafIcon()` Returns the default icon, for the current laf, that is used to represent leaf nodes.
    `Icon` | DefaultTreeCellRenderer.`getDefaultOpenIcon()` Returns the default icon, for the current laf, that is used to represent non-leaf nodes that are expanded.
    `Icon` | DefaultTreeCellRenderer.`getLeafIcon()` Returns the icon used to represent leaf nodes.
    `Icon` | DefaultTreeCellRenderer.`getOpenIcon()` Returns the icon used to represent non-leaf nodes that are expanded.

    Methods in javax.swing.tree with parameters of type Icon
    Modifier and Type | Method and Description
    --- | ---
    `void` | DefaultTreeCellRenderer.`setClosedIcon(Icon newIcon)` Sets the icon used to represent non-leaf nodes that are not expanded.
    `void` | DefaultTreeCellRenderer.`setLeafIcon(Icon newIcon)` Sets the icon used to represent leaf nodes.
    `void` | DefaultTreeCellRenderer.`setOpenIcon(Icon newIcon)` Sets the icon used to represent non-leaf nodes that are expanded.

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.