javax.swing.event

## Class AncestorEvent

- java.lang.Object
- - java.util.EventObject
  - - java.awt.AWTEvent
    - - javax.swing.event.AncestorEvent

- All Implemented Interfaces:
    Serializable

      public class AncestorEvent
      extends AWTEvent

  An event reported to a child component that originated from an ancestor in the component hierarchy.

  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`.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `ANCESTOR_ADDED` | An ancestor-component was added to the hierarchy of visible objects (made visible), and is currently being displayed.
    `static int` | `ANCESTOR_MOVED` | An ancestor-component changed its position on the screen.
    `static int` | `ANCESTOR_REMOVED` | An ancestor-component was removed from the hierarchy of visible objects (hidden) and is no longer being displayed.

    - ### Fields inherited from 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 inherited from class java.util.EventObject

      `source`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AncestorEvent(JComponent source, int id, Container ancestor, Container ancestorParent)` | Constructs an AncestorEvent object to identify a change in an ancestor-component's display-status.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Container` | `getAncestor()` | Returns the ancestor that the event actually occurred on.
    `Container` | `getAncestorParent()` | Returns the parent of the ancestor the event actually occurred on.
    `JComponent` | `getComponent()` | Returns the component that the listener was added to.

    - ### Methods inherited from class java.awt.AWTEvent

      `consume, getID, isConsumed, paramString, setSource, toString`

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

- - ### Field Detail

    - #### ANCESTOR_ADDED

          public static final int ANCESTOR_ADDED

      An ancestor-component was added to the hierarchy of visible objects (made visible), and is currently being displayed.
      See Also:
        Constant Field Values

    - #### ANCESTOR_REMOVED

          public static final int ANCESTOR_REMOVED

      An ancestor-component was removed from the hierarchy of visible objects (hidden) and is no longer being displayed.
      See Also:
        Constant Field Values

    - #### ANCESTOR_MOVED

          public static final int ANCESTOR_MOVED

      An ancestor-component changed its position on the screen.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AncestorEvent

          public AncestorEvent(JComponent source,
                               int id,
                               Container ancestor,
                               Container ancestorParent)

      Constructs an AncestorEvent object to identify a change in an ancestor-component's display-status.
      Parameters:
        `source` - the JComponent that originated the event (typically `this`)
        `id` - an int specifying `ANCESTOR_ADDED`, `ANCESTOR_REMOVED` or `ANCESTOR_MOVED`
        `ancestor` - a Container object specifying the ancestor-component whose display-status changed
        `ancestorParent` - a Container object specifying the ancestor's parent

  - ### Method Detail

    - #### getAncestor

          public Container getAncestor()

      Returns the ancestor that the event actually occurred on.

    - #### getAncestorParent

          public Container getAncestorParent()

      Returns the parent of the ancestor the event actually occurred on. This is most interesting in an ANCESTOR_REMOVED event, as the ancestor may no longer be in the component hierarchy.

    - #### getComponent

          public JComponent getComponent()

      Returns the component that the listener was added to.

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.