java.awt.event

## Class WindowEvent

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

- All Implemented Interfaces:
    Serializable

      public class WindowEvent
      extends ComponentEvent

  A low-level event that indicates that a window has changed its status. This low-level event is generated by a Window object when it is opened, closed, activated, deactivated, iconified, or deiconified, or when focus is transfered into or out of the Window.

  The event is passed to every `WindowListener` or `WindowAdapter` object which registered to receive such events using the window's `addWindowListener` method. (`WindowAdapter` objects implement the `WindowListener` interface.) Each such listener object gets this `WindowEvent` when the event occurs.

  Since:
    JDK1.1
  See Also:
    `WindowAdapter`, `WindowListener`, Tutorial: Writing a Window Listener, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `WINDOW_ACTIVATED` The window-activated event type.
    `static int` | `WINDOW_CLOSED` The window closed event.
    `static int` | `WINDOW_CLOSING` The "window is closing" event.
    `static int` | `WINDOW_DEACTIVATED` The window-deactivated event type.
    `static int` | `WINDOW_DEICONIFIED` The window deiconified event type.
    `static int` | `WINDOW_FIRST` The first number in the range of ids used for window events.
    `static int` | `WINDOW_GAINED_FOCUS` The window-gained-focus event type.
    `static int` | `WINDOW_ICONIFIED` The window iconified event.
    `static int` | `WINDOW_LAST` The last number in the range of ids used for window events.
    `static int` | `WINDOW_LOST_FOCUS` The window-lost-focus event type.
    `static int` | `WINDOW_OPENED` The window opened event.
    `static int` | `WINDOW_STATE_CHANGED` The window-state-changed event type.

    - ### Fields inherited from class java.awt.event.ComponentEvent

      `COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN`

    - ### 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 and Description
    `WindowEvent(Window source, int id)` Constructs a `WindowEvent` object.
    `WindowEvent(Window source, int id, int oldState, int newState)` Constructs a `WindowEvent` object with the specified previous and new window states.
    `WindowEvent(Window source, int id, Window opposite)` Constructs a `WindowEvent` object with the specified opposite `Window`.
    `WindowEvent(Window source, int id, Window opposite, int oldState, int newState)` Constructs a `WindowEvent` object.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getNewState()` For `WINDOW_STATE_CHANGED` events returns the new state of the window.
    `int` | `getOldState()` For `WINDOW_STATE_CHANGED` events returns the previous state of the window.
    `Window` | `getOppositeWindow()` Returns the other Window involved in this focus or activation change.
    `Window` | `getWindow()` Returns the originator of the event.
    `String` | `paramString()` Returns a parameter string identifying this event.

    - ### Methods inherited from class java.awt.event.ComponentEvent

      `getComponent`

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

      `consume, getID, isConsumed, 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

    - #### WINDOW_FIRST

          public static final int WINDOW_FIRST

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

    - #### WINDOW_OPENED

          public static final int WINDOW_OPENED

      The window opened event. This event is delivered only the first time a window is made visible.
      See Also:
        Constant Field Values

    - #### WINDOW_CLOSING

          public static final int WINDOW_CLOSING

      The "window is closing" event. This event is delivered when the user attempts to close the window from the window's system menu. If the program does not explicitly hide or dispose the window while processing this event, the window close operation will be cancelled.
      See Also:
        Constant Field Values

    - #### WINDOW_CLOSED

          public static final int WINDOW_CLOSED

      The window closed event. This event is delivered after the window has been closed as the result of a call to dispose.
      See Also:
        Constant Field Values

    - #### WINDOW_ICONIFIED

          public static final int WINDOW_ICONIFIED

      The window iconified event. This event is delivered when the window has been changed from a normal to a minimized state. For many platforms, a minimized window is displayed as the icon specified in the window's iconImage property.
      See Also:
        `Frame.setIconImage(java.awt.Image)`, Constant Field Values

    - #### WINDOW_DEICONIFIED

          public static final int WINDOW_DEICONIFIED

      The window deiconified event type. This event is delivered when the window has been changed from a minimized to a normal state.
      See Also:
        Constant Field Values

    - #### WINDOW_ACTIVATED

          public static final int WINDOW_ACTIVATED

      The window-activated event type. This event is delivered when the Window becomes the active Window. Only a Frame or a Dialog can be the active Window. The native windowing system may denote the active Window or its children with special decorations, such as a highlighted title bar. The active Window is always either the focused Window, or the first Frame or Dialog that is an owner of the focused Window.
      See Also:
        Constant Field Values

    - #### WINDOW_DEACTIVATED

          public static final int WINDOW_DEACTIVATED

      The window-deactivated event type. This event is delivered when the Window is no longer the active Window. Only a Frame or a Dialog can be the active Window. The native windowing system may denote the active Window or its children with special decorations, such as a highlighted title bar. The active Window is always either the focused Window, or the first Frame or Dialog that is an owner of the focused Window.
      See Also:
        Constant Field Values

    - #### WINDOW_GAINED_FOCUS

          public static final int WINDOW_GAINED_FOCUS

      The window-gained-focus event type. This event is delivered when the Window becomes the focused Window, which means that the Window, or one of its subcomponents, will receive keyboard events.
      See Also:
        Constant Field Values

    - #### WINDOW_LOST_FOCUS

          public static final int WINDOW_LOST_FOCUS

      The window-lost-focus event type. This event is delivered when a Window is no longer the focused Window, which means keyboard events will no longer be delivered to the Window or any of its subcomponents.
      See Also:
        Constant Field Values

    - #### WINDOW_STATE_CHANGED

          public static final int WINDOW_STATE_CHANGED

      The window-state-changed event type. This event is delivered when a Window's state is changed by virtue of it being iconified, maximized etc.
      Since:
        1.4
      See Also:
        Constant Field Values

    - #### WINDOW_LAST

          public static final int WINDOW_LAST

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

  - ### Constructor Detail

    - #### WindowEvent

          public WindowEvent(Window source,
                     int id,
                     Window opposite,
                     int oldState,
                     int newState)

      Constructs a `WindowEvent` object.

      Note that passing in an invalid `id` results in unspecified behavior. This method throws an `IllegalArgumentException` if `source` is `null`.

      Parameters:
        `source` - the `Window` object that originated the event
        `id` - an integer indicating the type of event.
        `opposite` - the other window involved in the focus or activation change, or `null`
        `oldState` - previous state of the window for window state change event
        `newState` - new state of the window for window state change event
      Throws:
        `IllegalArgumentException` - if `source` is null
      Since:
        1.4

    - #### WindowEvent

          public WindowEvent(Window source,
                     int id,
                     Window opposite)

      Constructs a `WindowEvent` object with the specified opposite `Window`. The opposite `Window` is the other `Window` involved in this focus or activation change. For a `WINDOW_ACTIVATED` or `WINDOW_GAINED_FOCUS` event, this is the `Window` that lost activation or focus. For a `WINDOW_DEACTIVATED` or `WINDOW_LOST_FOCUS` event, this is the `Window` that gained activation or focus. If this focus change occurs with a native application, with a Java application in a different VM, or with no other `Window`, then the opposite Window is `null`.

      Note that passing in an invalid `id` results in unspecified behavior. This method throws an `IllegalArgumentException` if `source` is `null`.

      Parameters:
        `source` - the `Window` object that originated the event
        `id` - `WINDOW_ACTIVATED`, `WINDOW_DEACTIVATED`, `WINDOW_GAINED_FOCUS`, or `WINDOW_LOST_FOCUS`. It is expected that this constructor will not be used for other `WindowEvent` types because the opposite `Window` of such events will always be `null`
        `opposite` - the other `Window` involved in the focus or activation change, or `null`
      Throws:
        `IllegalArgumentException` - if `source` is null
      Since:
        1.4

    - #### WindowEvent

          public WindowEvent(Window source,
                     int id,
                     int oldState,
                     int newState)

      Constructs a `WindowEvent` object with the specified previous and new window states.

      Note that passing in an invalid `id` results in unspecified behavior. This method throws an `IllegalArgumentException` if `source` is `null`.

      Parameters:
        `source` - the `Window` object that originated the event
        `id` - `WINDOW_STATE_CHANGED` event type. It is expected that this constructor will not be used for other `WindowEvent` types, because the previous and new window states are meaningless for other event types.
        `oldState` - an integer representing the previous window state
        `newState` - an integer representing the new window state
      Throws:
        `IllegalArgumentException` - if `source` is null
      Since:
        1.4

    - #### WindowEvent

          public WindowEvent(Window source,
                     int id)

      Constructs a `WindowEvent` object.

      Note that passing in an invalid `id` results in unspecified behavior. This method throws an `IllegalArgumentException` if `source` is `null`.

      Parameters:
        `source` - the `Window` object that originated the event
        `id` - an integer indicating the type of event
      Throws:
        `IllegalArgumentException` - if `source` is null

  - ### Method Detail

    - #### getWindow

          public Window getWindow()

      Returns the originator of the event.
      Returns:
        the Window object that originated the event

    - #### getOppositeWindow

          public Window getOppositeWindow()

      Returns the other Window involved in this focus or activation change. For a WINDOW_ACTIVATED or WINDOW_GAINED_FOCUS event, this is the Window that lost activation or focus. For a WINDOW_DEACTIVATED or WINDOW_LOST_FOCUS event, this is the Window that gained activation or focus. For any other type of WindowEvent, or if the focus or activation change occurs with a native application, with a Java application in a different VM or context, or with no other Window, null is returned.
      Returns:
        the other Window involved in the focus or activation change, or null
      Since:
        1.4

    - #### getOldState

          public int getOldState()

      For `WINDOW_STATE_CHANGED` events returns the previous state of the window. The state is represented as a bitwise mask.
      - `NORMAL`
        Indicates that no state bits are set.
      - `ICONIFIED`
      - `MAXIMIZED_HORIZ`
      - `MAXIMIZED_VERT`
      - `MAXIMIZED_BOTH`
        Concatenates `MAXIMIZED_HORIZ` and `MAXIMIZED_VERT`.
      Returns:
        a bitwise mask of the previous window state
      Since:
        1.4
      See Also:
        `Frame.getExtendedState()`

    - #### getNewState

          public int getNewState()

      For `WINDOW_STATE_CHANGED` events returns the new state of the window. The state is represented as a bitwise mask.
      - `NORMAL`
        Indicates that no state bits are set.
      - `ICONIFIED`
      - `MAXIMIZED_HORIZ`
      - `MAXIMIZED_VERT`
      - `MAXIMIZED_BOTH`
        Concatenates `MAXIMIZED_HORIZ` and `MAXIMIZED_VERT`.
      Returns:
        a bitwise mask of the new window state
      Since:
        1.4
      See Also:
        `Frame.getExtendedState()`

    - #### 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 `ComponentEvent`
      Returns:
        a string identifying the event and its attributes

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, 2014, Oracle and/or its affiliates. All rights reserved.