ComboBoxModel (Java Platform SE 8 )
Keywords: javax.swing.ComboBoxModel interface
Date: 2026-04-17

javax.swing

## Interface ComboBoxModel<E>

- Type Parameters:
    `E` - the type of the elements of this model
  All Superinterfaces:
    ListModel<E>
  All Known Subinterfaces:
    MutableComboBoxModel<E>
  All Known Implementing Classes:
    DefaultComboBoxModel, MetalFileChooserUI.DirectoryComboBoxModel, MetalFileChooserUI.FilterComboBoxModel

      public interface ComboBoxModel<E>
      extends ListModel<E>

  A data model for a combo box. This interface extends `ListDataModel` and adds the concept of a selected item. The selected item is generally the item which is visible in the combo box display area.

  The selected item may not necessarily be managed by the underlying `ListModel`. This disjoint behavior allows for the temporary storage and retrieval of a selected item in the model.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `getSelectedItem()` Returns the selected item
    `void` | `setSelectedItem(Object anItem)` Set the selected item.

    - ### Methods inherited from interface javax.swing.ListModel

      `addListDataListener, getElementAt, getSize, removeListDataListener`

- - ### Method Detail

    - #### setSelectedItem

          void setSelectedItem(Object anItem)

      Set the selected item. The implementation of this method should notify all registered `ListDataListener`s that the contents have changed.
      Parameters:
        `anItem` - the list object to select or `null` to clear the selection

    - #### getSelectedItem

          Object getSelectedItem()

      Returns the selected item
      Returns:
        The selected item or `null` if there is no selection

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.