# 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 final int`
`COMPONENT_FIRST`
The first number in the range of ids used for component events.
`static final int`
`COMPONENT_HIDDEN`
This event indicates that the component was rendered invisible.
`static final int`
`COMPONENT_LAST`
The last number in the range of ids used for component events.
`static final int`
`COMPONENT_MOVED`
This event indicates that the component's position changed.
`static final int`
`COMPONENT_RESIZED`
This event indicates that the component's size changed.
`static final int`
`COMPONENT_SHOWN`
This event indicates that the component was made visible.

### Fields declared in class 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 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 AWTEvent

`consume, getID, isConsumed, setSource, toString`

### Methods declared in class EventObject

`getSource`

### Methods declared in class Object

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

## Field Details

### 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 Details

### 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 Details

### 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