Module java.desktop
Package java.awt.event

## Class ComponentEvent

- java.lang.Object
- - java.util.EventObject
  - - java.awt.AWTEvent
    - - java.awt.event.ComponentEvent

- All Implemented Interfaces:
    `Serializable`
  Direct Known Subclasses:
    `ContainerEvent`, `FocusEvent`, `InputEvent`, `PaintEvent`, `WindowEvent`

      public class ComponentEvent
      extends AWTEvent

  A low-level event which indicates that a component moved, changed size, or changed visibility (also, the root class for the other component-level events).

  Component events are provided for notification purposes ONLY; The AWT will automatically handle component moves and resizes internally so that GUI layout works properly regardless of whether a program is receiving these events or not.

  In addition to serving as the base class for other component-related events (InputEvent, FocusEvent, WindowEvent, ContainerEvent), this class defines the events that indicate changes in a component's size, position, or visibility.

  This low-level event is generated by a component object (such as a List) when the component is moved, resized, rendered invisible, or made visible again. The event is passed to every `ComponentListener` or `ComponentAdapter` object which registered to receive such events using the component's `addComponentListener` method. (`ComponentAdapter` objects implement the `ComponentListener` interface.) Each such listener object gets this `ComponentEvent` when the event occurs.

  An unspecified behavior will be caused if the `id` parameter of any particular `ComponentEvent` instance is not in the range from `COMPONENT_FIRST` to `COMPONENT_LAST`.

  Since:
    1.1
  See Also:
    `ComponentAdapter`, `ComponentListener`, Tutorial: Writing a Component Listener, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `COMPONENT_FIRST` | The first number in the range of ids used for component events.
    `static int` | `COMPONENT_HIDDEN` | This event indicates that the component was rendered invisible.
    `static int` | `COMPONENT_LAST` | The last number in the range of ids used for component events.
    `static int` | `COMPONENT_MOVED` | This event indicates that the component's position changed.
    `static int` | `COMPONENT_RESIZED` | This event indicates that the component's size changed.
    `static int` | `COMPONENT_SHOWN` | This event indicates that the component was made visible.

    - ### Fields declared in class java.awt.AWTEvent

      `ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK`

    - ### Fields declared in class java.util.EventObject

      `source`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ComponentEvent​(Component source, int id)` | Constructs a `ComponentEvent` object.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `Component` | `getComponent()` | Returns the originator of the event.
    `String` | `paramString()` | Returns a parameter string identifying this event.

    - ### Methods declared in class java.awt.AWTEvent

      `consume, getID, isConsumed, setSource, toString`

    - ### Methods declared in class java.util.EventObject

      `getSource`

    - ### Methods declared in class java.lang.Object

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

- - ### Field Detail

    - #### COMPONENT_FIRST

          public static final int COMPONENT_FIRST

      The first number in the range of ids used for component events.
      See Also:
        Constant Field Values

    - #### COMPONENT_LAST

          public static final int COMPONENT_LAST

      The last number in the range of ids used for component events.
      See Also:
        Constant Field Values

    - #### COMPONENT_MOVED

          @Native
          public static final int COMPONENT_MOVED

      This event indicates that the component's position changed.
      See Also:
        Constant Field Values

    - #### COMPONENT_RESIZED

          @Native
          public static final int COMPONENT_RESIZED

      This event indicates that the component's size changed.
      See Also:
        Constant Field Values

    - #### COMPONENT_SHOWN

          @Native
          public static final int COMPONENT_SHOWN

      This event indicates that the component was made visible.
      See Also:
        Constant Field Values

    - #### COMPONENT_HIDDEN

          @Native
          public static final int COMPONENT_HIDDEN

      This event indicates that the component was rendered invisible.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ComponentEvent

          public ComponentEvent​(Component source,
                                int id)

      Constructs a `ComponentEvent` object.

      This method throws an `IllegalArgumentException` if `source` is `null`.

      Parameters:
        `source` - The `Component` that originated the event
        `id` - An integer indicating the type of event. For information on allowable values, see the class description for `ComponentEvent`
      Throws:
        `IllegalArgumentException` - if `source` is null
      See Also:
        `getComponent()`, `AWTEvent.getID()`

  - ### Method Detail

    - #### getComponent

          public Component getComponent()

      Returns the originator of the event.
      Returns:
        the `Component` object that originated the event, or `null` if the object is not a `Component`.

    - #### paramString

          public String paramString()

      Returns a parameter string identifying this event. This method is useful for event-logging and for debugging.
      Overrides:
        `paramString` in class `AWTEvent`
      Returns:
        a string identifying the event and its attributes