javax.swing.event

## Class ListSelectionEvent

- java.lang.Object
- - java.util.EventObject
  - - javax.swing.event.ListSelectionEvent

- All Implemented Interfaces:
    Serializable

      public class ListSelectionEvent
      extends EventObject

  An event that characterizes a change in selection. The change is limited to a a single inclusive interval. The selection of at least one index within the range will have changed. A decent `ListSelectionModel` implementation will keep the range as small as possible. `ListSelectionListeners` will generally query the source of the event for the new selected status of each potentially changed row.

  Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the `java.beans` package. Please see `XMLEncoder`.

  See Also:
    `ListSelectionModel`

- - ### Field Summary

    - ### Fields inherited from class java.util.EventObject

      `source`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ListSelectionEvent(Object source, int firstIndex, int lastIndex, boolean isAdjusting)` | Represents a change in selection status between `firstIndex` and `lastIndex`, inclusive.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `getFirstIndex()` | Returns the index of the first row whose selection may have changed.
    `int` | `getLastIndex()` | Returns the index of the last row whose selection may have changed.
    `boolean` | `getValueIsAdjusting()` | Returns whether or not this is one in a series of multiple events, where changes are still being made.
    `String` | `toString()` | Returns a `String` that displays and identifies this object's properties.

    - ### Methods inherited from class java.util.EventObject

      `getSource`

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

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

- - ### Constructor Detail

    - #### ListSelectionEvent

          public ListSelectionEvent(Object source,
                                    int firstIndex,
                                    int lastIndex,
                                    boolean isAdjusting)

      Represents a change in selection status between `firstIndex` and `lastIndex`, inclusive. `firstIndex` is less than or equal to `lastIndex`. The selection of at least one index within the range will have changed.
      Parameters:
        `firstIndex` - the first index in the range, <= lastIndex
        `lastIndex` - the last index in the range, >= firstIndex
        `isAdjusting` - whether or not this is one in a series of multiple events, where changes are still being made

  - ### Method Detail

    - #### getFirstIndex

          public int getFirstIndex()

      Returns the index of the first row whose selection may have changed. `getFirstIndex() <= getLastIndex()`
      Returns:
        the first row whose selection value may have changed, where zero is the first row

    - #### getLastIndex

          public int getLastIndex()

      Returns the index of the last row whose selection may have changed. `getLastIndex() >= getFirstIndex()`
      Returns:
        the last row whose selection value may have changed, where zero is the first row

    - #### getValueIsAdjusting

          public boolean getValueIsAdjusting()

      Returns whether or not this is one in a series of multiple events, where changes are still being made. See the documentation for `ListSelectionModel.setValueIsAdjusting(boolean)` for more details on how this is used.
      Returns:
        `true` if this is one in a series of multiple events, where changes are still being made

    - #### toString

          public String toString()

      Returns a `String` that displays and identifies this object's properties.
      Overrides:
        `toString` in class `EventObject`
      Returns:
        a String representation of this object

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.