- 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
指示窗口已更改其状态的低级别事件。 当Window对象被打开,关闭,激活,停用,图标化或去隐藏时,或当焦点转移到窗口中或从窗口传出时,此低级事件由Window对象生成。该事件被传递给使用窗口的
addWindowListener方法注册接收这种事件的每个WindowListener或WindowAdapter对象。 (WindowAdapter对象实现WindowListener接口。)每个这样的侦听器对象在事件发生时得到这个WindowEvent。如果任何特定的
WindowEvent实例的id参数不在从WINDOW_FIRST到WINDOW_LAST的范围内,将会导致未指定的行为。- 从以下版本开始:
- 1.1
- 另请参见:
-
WindowAdapter,WindowListener, Tutorial: Writing a Window Listener , Serialized Form
-
-
Field Summary
Fields Modifier and Type Field 描述 static intWINDOW_ACTIVATED窗口激活的事件类型。static intWINDOW_CLOSED窗户关闭事件。static intWINDOW_CLOSING“窗口正在关闭”事件。static intWINDOW_DEACTIVATED窗口停用事件类型。static intWINDOW_DEICONIFIED窗口deiconified事件类型。static intWINDOW_FIRST用于窗口事件的ids范围中的第一个数字。static intWINDOW_GAINED_FOCUS窗口获取焦点事件类型。static intWINDOW_ICONIFIED窗口图标化事件。static intWINDOW_LAST用于窗口事件的ID的范围中的最后一个数字。static intWINDOW_LOST_FOCUS窗口丢失焦点事件类型。static intWINDOW_OPENED窗户打开事件。static intWINDOW_STATE_CHANGED窗口状态更改的事件类型。-
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.awt.event.ComponentEvent
COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN
-
Fields inherited from class java.util.EventObject
source
-
-
构造方法摘要
构造方法 Constructor 描述 WindowEvent(Window source, int id)构造一个WindowEvent对象。WindowEvent(Window source, int id, int oldState, int newState)构造具有指定的上一个和新的窗口状态的WindowEvent对象。WindowEvent(Window source, int id, Window opposite)构造一个WindowEvent对象,其指定的对端为Window。WindowEvent(Window source, int id, Window opposite, int oldState, int newState)构造一个WindowEvent对象。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 intgetNewState()对于WINDOW_STATE_CHANGED事件返回窗口的新状态。intgetOldState()对于WINDOW_STATE_CHANGED事件返回窗口的先前状态。WindowgetOppositeWindow()返回此焦点或激活更改中涉及的其他窗口。WindowgetWindow()返回事件的发起者。StringparamString()返回标识此事件的参数字符串。-
Methods inherited from class java.awt.event.ComponentEvent
getComponent
-
Methods inherited from class java.util.EventObject
getSource
-
-
-
-
字段详细信息
-
WINDOW_FIRST
public static final int WINDOW_FIRST
用于窗口事件的ids范围中的第一个数字。- 另请参见:
- Constant Field Values
-
WINDOW_OPENED
@Native public static final int WINDOW_OPENED
窗户打开事件。 此事件仅在窗口第一次可见时才提供。- 另请参见:
- Constant Field Values
-
WINDOW_CLOSING
@Native public static final int WINDOW_CLOSING
“窗口正在关闭”事件。 当用户尝试从窗口的系统菜单中关闭窗口时,会传送此事件。 如果程序在处理此事件时没有明确隐藏或处理窗口,则窗口关闭操作将被取消。- 另请参见:
- Constant Field Values
-
WINDOW_CLOSED
@Native public static final int WINDOW_CLOSED
窗户关闭事件。 此事件是由于处理呼叫而导致可显示窗口关闭后发送的。
-
WINDOW_ICONIFIED
@Native public static final int WINDOW_ICONIFIED
窗口图标化事件。 当窗口从正常状态更改为最小化状态时,将传递此事件。 对于许多平台,最小化的窗口将显示为窗口的iconImage属性中指定的图标。
-
WINDOW_DEICONIFIED
@Native public static final int WINDOW_DEICONIFIED
窗口deiconified事件类型。 当窗口从最小化状态更改为正常状态时,将传递此事件。- 另请参见:
- Constant Field Values
-
WINDOW_ACTIVATED
@Native public static final int WINDOW_ACTIVATED
窗口激活的事件类型。 当窗口成为活动窗口时,会传送此事件。 只有框架或对话框可以是活动窗口。 本地窗口系统可以表示活动窗口或其具有特殊装饰的儿童,例如突出显示的标题栏。 活动窗口始终是聚焦的窗口,或者是聚焦窗口的所有者的第一个框架或对话框。- 另请参见:
- Constant Field Values
-
WINDOW_DEACTIVATED
@Native public static final int WINDOW_DEACTIVATED
窗口停用事件类型。 当窗口不再是活动窗口时,会传送此事件。 只有框架或对话框可以是活动窗口。 本地窗口系统可以表示活动窗口或其具有特殊装饰的儿童,例如突出显示的标题栏。 活动窗口始终是聚焦的窗口,或者是聚焦窗口的所有者的第一个框架或对话框。- 另请参见:
- Constant Field Values
-
WINDOW_GAINED_FOCUS
@Native public static final int WINDOW_GAINED_FOCUS
窗口获取焦点事件类型。 当窗口成为聚焦窗口时,会传递此事件,这意味着窗口或其子组件之一将接收键盘事件。- 另请参见:
- Constant Field Values
-
WINDOW_LOST_FOCUS
@Native public static final int WINDOW_LOST_FOCUS
窗口丢失焦点事件类型。 当窗口不再是聚焦窗口时,会传递此事件,这意味着键盘事件将不再传递到窗口或其任何子组件。- 另请参见:
- Constant Field Values
-
WINDOW_STATE_CHANGED
@Native public static final int WINDOW_STATE_CHANGED
窗口状态更改的事件类型。 当窗口的状态由于图标化,最大化等而改变时,会传送此事件。- 从以下版本开始:
- 1.4
- 另请参见:
- Constant Field Values
-
WINDOW_LAST
public static final int WINDOW_LAST
用于窗口事件的ID的范围中的最后一个数字。- 另请参见:
- Constant Field Values
-
-
构造方法详细信息
-
WindowEvent
public WindowEvent(Window source, int id, Window opposite, int oldState, int newState)
构造一个WindowEvent对象。此方法抛出
IllegalArgumentException如果source为null。- 参数
-
source- 发起事件的Window对象 -
id- 指示事件类型的整数。 有关允许值的信息,请参阅WindowEvent的类描述 -
opposite- 涉及焦点或激活更改的其他窗口,或null -
oldState- 窗口状态更改事件的窗口的上一个状态。 有关允许的值,请参阅#getOldState() -
newState- 窗口状态更改事件的窗口的新状态。 有关允许的值,请参阅#getNewState() - 异常
-
IllegalArgumentException- 如果source为空 - 从以下版本开始:
- 1.4
- 另请参见:
-
getWindow(),AWTEvent.getID(),getOppositeWindow(),getOldState(),getNewState()
-
WindowEvent
public WindowEvent(Window source, int id, Window opposite)
构造一个WindowEvent对象,指定的对端为Window。 相反的Window是另一个Window涉及到这个焦点或激活的变化。 对于WINDOW_ACTIVATED或WINDOW_GAINED_FOCUS事件,这是Window失去激活或焦点。 对于WINDOW_DEACTIVATED或WINDOW_LOST_FOCUS事件,这是获得激活或焦点的Window。 如果本机应用程序发生此焦点更改,在不同的VM中使用Java应用程序,或者没有其他的Window,那么相反的窗口是null。此方法抛出
IllegalArgumentException如果source为null。- 参数
-
source- 发起事件的Window对象 -
id- 指示事件类型的整数。 有关允许值的信息,请参阅WindowEvent的类说明。 据预计,此构造将不会被用于其他然后WINDOW_ACTIVATED,WINDOW_DEACTIVATED,WINDOW_GAINED_FOCUS,或WINDOW_LOST_FOCUS。WindowEvent类型,因为其他事件类型相反的Window将永远是null。 -
opposite- 其他Window涉及到焦点或激活更改,或null - 异常
-
IllegalArgumentException- 如果source为空 - 从以下版本开始:
- 1.4
- 另请参见:
-
getWindow(),AWTEvent.getID(),getOppositeWindow()
-
WindowEvent
public WindowEvent(Window source, int id, int oldState, int newState)
构造具有指定的上一个和新窗口状态的WindowEvent对象。此方法抛出
IllegalArgumentException如果source为null。- 参数
-
source- 发起事件的Window对象 -
id- 指示事件类型的整数。 有关允许值的信息,请参阅WindowEvent的类说明。 据预计,此构造将不会被用于其他然后WINDOW_STATE_CHANGEDWindowEvent类型,因为以前和新的窗口状态是无意义的其他事件类型。 -
oldState- 表示上一窗口状态的整数。 关于允许值,请参阅#getOldState() -
newState- 表示新窗口状态的整数。 有关允许值,请参阅#getNewState() - 异常
-
IllegalArgumentException- 如果source为空 - 从以下版本开始:
- 1.4
- 另请参见:
-
getWindow(),AWTEvent.getID(),getOldState(),getNewState()
-
WindowEvent
public WindowEvent(Window source, int id)
构造一个WindowEvent对象。此方法抛出
IllegalArgumentException如果source为null。- 参数
-
source- 发起事件的Window对象 -
id- 表示事件类型的整数。 有关允许值的信息,请参阅WindowEvent的类说明。 - 异常
-
IllegalArgumentException- 如果source为空 - 另请参见:
-
getWindow(),AWTEvent.getID()
-
-
方法详细信息
-
getWindow
public Window getWindow()
返回事件的发起者。- 结果
- 发起事件的Window对象
-
getOppositeWindow
public Window getOppositeWindow()
返回此焦点或激活更改中涉及的其他窗口。 对于WINDOW_ACTIVATED或WINDOW_GAINED_FOCUS事件,这是失去激活或焦点的窗口。 对于WINDOW_DEACTIVATED或WINDOW_LOST_FOCUS事件,这是获得激活或焦点的窗口。 对于任何其他类型的WindowEvent,或者如果本机应用程序发生焦点或激活更改,在不同的VM或上下文中使用Java应用程序,或者没有其他Window,则返回null。- 结果
- 另一个窗口涉及到焦点或激活更改,或为null
- 从以下版本开始:
- 1.4
-
getOldState
public int getOldState()
对于WINDOW_STATE_CHANGED事件返回窗口的先前状态。 状态表示为按位掩码。-
NORMAL
表示没有设置状态位。 -
ICONIFIED -
MAXIMIZED_HORIZ -
MAXIMIZED_VERT -
MAXIMIZED_BOTH
连接MAXIMIZED_HORIZ和MAXIMIZED_VERT。
- 结果
- 前一窗口状态的按位掩码
- 从以下版本开始:
- 1.4
- 另请参见:
-
Frame.getExtendedState()
-
-
getNewState
public int getNewState()
对于WINDOW_STATE_CHANGED事件返回窗口的新状态。 状态表示为按位掩码。-
NORMAL
表示没有设置状态位。 -
ICONIFIED -
MAXIMIZED_HORIZ -
MAXIMIZED_VERT -
MAXIMIZED_BOTH
连接MAXIMIZED_HORIZ和MAXIMIZED_VERT。
- 结果
- 新窗口状态的按位掩码
- 从以下版本开始:
- 1.4
- 另请参见:
-
Frame.getExtendedState()
-
-
paramString
public String paramString()
返回标识此事件的参数字符串。 此方法对于事件记录和调试很有用。- 重写:
-
paramString在ComponentEvent - 结果
- 标识事件及其属性的字符串
-
-