public class HierarchyEvent extends AWTEvent
An event which indicates a change to the Component
hierarchy to which Component
belongs.
Hierarchy events are provided for notification purposes ONLY. The AWT will automatically handle changes to the hierarchy internally so that GUI layout and displayability works properly regardless of whether a program is receiving these events or not.
This event is generated by a Container object (such as a Panel) when the Container is added, removed, moved, or resized, and passed down the hierarchy. It is also generated by a Component object when that object's addNotify
, removeNotify
, show
, or hide
method is called. The ANCESTOR_MOVED
and ANCESTOR_RESIZED
events are dispatched to every HierarchyBoundsListener
or HierarchyBoundsAdapter
object which registered to receive such events using the Component's addHierarchyBoundsListener
method. (HierarchyBoundsAdapter
objects implement the
HierarchyBoundsListener
interface.) The HIERARCHY_CHANGED
events are dispatched to every HierarchyListener
object which registered to receive such events using the Component's addHierarchyListener
method. Each such listener object gets this HierarchyEvent
when the event occurs.
An unspecified behavior will be caused if the id
parameter of any particular HierarchyEvent
instance is not in the range from HIERARCHY_FIRST
to HIERARCHY_LAST
.
The changeFlags
parameter of any HierarchyEvent
instance takes one of the following values:
HierarchyEvent.PARENT_CHANGED
HierarchyEvent.DISPLAYABILITY_CHANGED
HierarchyEvent.SHOWING_CHANGED
HierarchyListener
, HierarchyBoundsAdapter
, HierarchyBoundsListener
, Serialized Formpublic static final int HIERARCHY_FIRST
Marks the first integer id for the range of hierarchy event ids.
public static final int HIERARCHY_CHANGED
The event id indicating that modification was made to the entire hierarchy tree.
public static final int ANCESTOR_MOVED
The event id indicating an ancestor-Container was moved.
public static final int ANCESTOR_RESIZED
The event id indicating an ancestor-Container was resized.
public static final int HIERARCHY_LAST
Marks the last integer id for the range of ancestor event ids.
public static final int PARENT_CHANGED
A change flag indicates that the HIERARCHY_CHANGED
event was generated by a reparenting operation.
public static final int DISPLAYABILITY_CHANGED
A change flag indicates that the HIERARCHY_CHANGED
event was generated due to the changing of the hierarchy displayability. To discern the current displayability of the hierarchy, call the Component.isDisplayable
method. Displayability changes occur in response to explicit or implicit calls of the Component.addNotify
and Component.removeNotify
methods.
Component.isDisplayable()
, Component.addNotify()
, Component.removeNotify()
, Constant Field Valuespublic static final int SHOWING_CHANGED
A change flag indicates that the HIERARCHY_CHANGED
event was generated due to the changing of the hierarchy showing state. To discern the current showing state of the hierarchy, call the Component.isShowing
method. Showing state changes occur when either the displayability or visibility of the hierarchy occurs. Visibility changes occur in response to explicit or implicit calls of the Component.show
and Component.hide
methods.
Component.isShowing()
, Component.addNotify()
, Component.removeNotify()
, Component.show()
, Component.hide()
, Constant Field Valuespublic HierarchyEvent(Component source, int id, Component changed, Container changedParent)
Constructs an HierarchyEvent
object to identify a change in the Component
hierarchy.
This method throws an IllegalArgumentException
if source
is null
.
source
- The Component
object that originated the eventid
- An integer indicating the type of event. For information on allowable values, see the class description for HierarchyEvent
changed
- The Component
at the top of the hierarchy which was changedchangedParent
- The parent of the changed
component. This may be the parent before or after the change, depending on the type of changeIllegalArgumentException
- if source
is null
EventObject.getSource()
, AWTEvent.getID()
, getChanged()
, getChangedParent()
public HierarchyEvent(Component source, int id, Component changed, Container changedParent, long changeFlags)
Constructs an HierarchyEvent
object to identify a change in the Component
hierarchy.
This method throws an IllegalArgumentException
if source
is null
.
source
- The Component
object that originated the eventid
- An integer indicating the type of event. For information on allowable values, see the class description for HierarchyEvent
changed
- The Component
at the top of the hierarchy which was changedchangedParent
- The parent of the changed
component. This may be the parent before or after the change, depending on the type of changechangeFlags
- A bitmask which indicates the type(s) of the HIERARCHY_CHANGED
events represented in this event object. For information on allowable values, see the class description for HierarchyEvent
IllegalArgumentException
- if source
is nullEventObject.getSource()
, AWTEvent.getID()
, getChanged()
, getChangedParent()
, getChangeFlags()
public Component getComponent()
Returns the originator of the event.
Component
object that originated the event, or null
if the object is not a Component
.public Component getChanged()
Returns the Component at the top of the hierarchy which was changed.
public Container getChangedParent()
Returns the parent of the Component returned by
getChanged()
. For a HIERARCHY_CHANGED event where the change was of type PARENT_CHANGED via a call to
Container.add
, the parent returned is the parent after the add operation. For a HIERARCHY_CHANGED event where the change was of type PARENT_CHANGED via a call to
Container.remove
, the parent returned is the parent before the remove operation. For all other events and types, the parent returned is the parent during the operation.
public long getChangeFlags()
Returns a bitmask which indicates the type(s) of HIERARCHY_CHANGED events represented in this event object. The bits have been bitwise-ored together.
public String paramString()
Returns a parameter string identifying this event. This method is useful for event-logging and for debugging.
paramString
in class AWTEvent
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.