public class Container extends Component
Components added to a container are tracked in a list. The order of the list will define the components' front-to-back stacking order within the container. If no index is specified when adding a component to a container, it will be added to the end of the list (and hence to the bottom of the stacking order).
Note: For details on the focus subsystem, see How to Use the Focus Subsystem, a section in The Java Tutorial, and the Focus Specification for more information.
add(java.awt.Component, int), 
getComponent(int), 
LayoutManager, 
Serialized Form| Modifier and Type | Class and Description | 
|---|---|
| protected class  | Container.AccessibleAWTContainerInner class of Container used to provide default support for
 accessibility. | 
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategyaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description | 
|---|
| Container()Constructs a new Container. | 
| Modifier and Type | Method and Description | 
|---|---|
| Component | add(Component comp)Appends the specified component to the end of this container. | 
| Component | add(Component comp,
   int index)Adds the specified component to this container at the given
 position. | 
| void | add(Component comp,
   Object constraints)Adds the specified component to the end of this container. | 
| void | add(Component comp,
   Object constraints,
   int index)Adds the specified component to this container with the specified
 constraints at the specified index. | 
| Component | add(String name,
   Component comp)Adds the specified component to this container. | 
| void | addContainerListener(ContainerListener l)Adds the specified container listener to receive container events
 from this container. | 
| protected void | addImpl(Component comp,
       Object constraints,
       int index)Adds the specified component to this container at the specified
 index. | 
| void | addNotify()Makes this Container displayable by connecting it to
 a native screen resource. | 
| void | addPropertyChangeListener(PropertyChangeListener listener)Adds a PropertyChangeListener to the listener list. | 
| void | addPropertyChangeListener(String propertyName,
                         PropertyChangeListener listener)Adds a PropertyChangeListener to the listener list for a specific
 property. | 
| void | applyComponentOrientation(ComponentOrientation o)Sets the  ComponentOrientationproperty of this container
 and all components contained within it. | 
| boolean | areFocusTraversalKeysSet(int id)Returns whether the Set of focus traversal keys for the given focus
 traversal operation has been explicitly defined for this Container. | 
| int | countComponents()Deprecated. 
 As of JDK version 1.1,
 replaced by getComponentCount(). | 
| void | deliverEvent(Event e)Deprecated. 
 As of JDK version 1.1,
 replaced by  dispatchEvent(AWTEvent e) | 
| void | doLayout()Causes this container to lay out its components. | 
| Component | findComponentAt(int x,
               int y)Locates the visible child component that contains the specified
 position. | 
| Component | findComponentAt(Point p)Locates the visible child component that contains the specified
 point. | 
| float | getAlignmentX()Returns the alignment along the x axis. | 
| float | getAlignmentY()Returns the alignment along the y axis. | 
| Component | getComponent(int n)Gets the nth component in this container. | 
| Component | getComponentAt(int x,
              int y)Locates the component that contains the x,y position. | 
| Component | getComponentAt(Point p)Gets the component that contains the specified point. | 
| int | getComponentCount()Gets the number of components in this panel. | 
| Component[] | getComponents()Gets all the components in this container. | 
| int | getComponentZOrder(Component comp)Returns the z-order index of the component inside the container. | 
| ContainerListener[] | getContainerListeners()Returns an array of all the container listeners
 registered on this container. | 
| Set<AWTKeyStroke> | getFocusTraversalKeys(int id)Returns the Set of focus traversal keys for a given traversal operation
 for this Container. | 
| FocusTraversalPolicy | getFocusTraversalPolicy()Returns the focus traversal policy that will manage keyboard traversal
 of this Container's children, or null if this Container is not a focus
 cycle root. | 
| Insets | getInsets()Determines the insets of this container, which indicate the size
 of the container's border. | 
| LayoutManager | getLayout()Gets the layout manager for this container. | 
| <T extends EventListener> | getListeners(Class<T> listenerType)Returns an array of all the objects currently registered
 as  FooListeners
 upon thisContainer. | 
| Dimension | getMaximumSize()Returns the maximum size of this container. | 
| Dimension | getMinimumSize()Returns the minimum size of this container. | 
| Point | getMousePosition(boolean allowChildren)Returns the position of the mouse pointer in this  Container's
 coordinate space if theContaineris under the mouse pointer,
 otherwise returnsnull. | 
| Dimension | getPreferredSize()Returns the preferred size of this container. | 
| Insets | insets()Deprecated. 
 As of JDK version 1.1,
 replaced by  getInsets(). | 
| void | invalidate()Invalidates the container. | 
| boolean | isAncestorOf(Component c)Checks if the component is contained in the component hierarchy of
 this container. | 
| boolean | isFocusCycleRoot()Returns whether this Container is the root of a focus traversal cycle. | 
| boolean | isFocusCycleRoot(Container container)Returns whether the specified Container is the focus cycle root of this
 Container's focus traversal cycle. | 
| boolean | isFocusTraversalPolicyProvider()Returns whether this container provides focus traversal
 policy. | 
| boolean | isFocusTraversalPolicySet()Returns whether the focus traversal policy has been explicitly set for
 this Container. | 
| boolean | isValidateRoot()Indicates if this container is a validate root. | 
| void | layout()Deprecated. 
 As of JDK version 1.1,
 replaced by  doLayout(). | 
| void | list(PrintStream out,
    int indent)Prints a listing of this container to the specified output
 stream. | 
| void | list(PrintWriter out,
    int indent)Prints out a list, starting at the specified indentation,
 to the specified print writer. | 
| Component | locate(int x,
      int y)Deprecated. 
 As of JDK version 1.1,
 replaced by  getComponentAt(int, int). | 
| Dimension | minimumSize()Deprecated. 
 As of JDK version 1.1,
 replaced by  getMinimumSize(). | 
| void | paint(Graphics g)Paints the container. | 
| void | paintComponents(Graphics g)Paints each of the components in this container. | 
| protected String | paramString()Returns a string representing the state of this  Container. | 
| Dimension | preferredSize()Deprecated. 
 As of JDK version 1.1,
 replaced by  getPreferredSize(). | 
| void | print(Graphics g)Prints the container. | 
| void | printComponents(Graphics g)Prints each of the components in this container. | 
| protected void | processContainerEvent(ContainerEvent e)Processes container events occurring on this container by
 dispatching them to any registered ContainerListener objects. | 
| protected void | processEvent(AWTEvent e)Processes events on this container. | 
| void | remove(Component comp)Removes the specified component from this container. | 
| void | remove(int index)Removes the component, specified by  index,
 from this container. | 
| void | removeAll()Removes all the components from this container. | 
| void | removeContainerListener(ContainerListener l)Removes the specified container listener so it no longer receives
 container events from this container. | 
| void | removeNotify()Makes this Container undisplayable by removing its connection
 to its native screen resource. | 
| void | setComponentZOrder(Component comp,
                  int index)Moves the specified component to the specified z-order index in
 the container. | 
| void | setFocusCycleRoot(boolean focusCycleRoot)Sets whether this Container is the root of a focus traversal cycle. | 
| void | setFocusTraversalKeys(int id,
                     Set<? extends AWTKeyStroke> keystrokes)Sets the focus traversal keys for a given traversal operation for this
 Container. | 
| void | setFocusTraversalPolicy(FocusTraversalPolicy policy)Sets the focus traversal policy that will manage keyboard traversal of
 this Container's children, if this Container is a focus cycle root. | 
| void | setFocusTraversalPolicyProvider(boolean provider)Sets whether this container will be used to provide focus
 traversal policy. | 
| void | setFont(Font f)Sets the font of this container. | 
| void | setLayout(LayoutManager mgr)Sets the layout manager for this container. | 
| void | transferFocusDownCycle()Transfers the focus down one focus traversal cycle. | 
| void | update(Graphics g)Updates the container. | 
| void | validate()Validates this container and all of its subcomponents. | 
| protected void | validateTree()Recursively descends the container tree and recomputes the
 layout for any subtrees marked as needing it (those marked as
 invalid). | 
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCyclepublic Container()
public int getComponentCount()
Note: This method should be called under AWT tree lock.
getComponent(int), 
Component.getTreeLock()@Deprecated public int countComponents()
public Component getComponent(int n)
Note: This method should be called under AWT tree lock.
n - the index of the component to get.ArrayIndexOutOfBoundsException - if the nth value does not exist.Component.getTreeLock()public Component[] getComponents()
Note: This method should be called under AWT tree lock.
Component.getTreeLock()public Insets getInsets()
 A Frame object, for example, has a top inset that
 corresponds to the height of the frame's title bar.
Insets, 
LayoutManager@Deprecated public Insets insets()
getInsets().public Component add(Component comp)
addImpl(java.awt.Component, java.lang.Object, int).
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to display the added component.
comp - the component to be addedNullPointerException - if comp is nulladdImpl(java.awt.Component, java.lang.Object, int), 
invalidate(), 
validate(), 
JComponent.revalidate()public Component add(String name, Component comp)
addImpl(java.awt.Component, java.lang.Object, int).
 
 This method is obsolete as of 1.1.  Please use the
 method add(Component, Object) instead.
 
This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to display the added component.
NullPointerException - if comp is nulladd(Component, Object), 
invalidate()public Component add(Component comp, int index)
addImpl(java.awt.Component, java.lang.Object, int).
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to display the added component.
comp - the component to be addedindex - the position at which to insert the component,
                   or -1 to append the component to the endcompNullPointerException - if comp is nullIllegalArgumentException - if index is invalid (see
            addImpl(java.awt.Component, java.lang.Object, int) for details)addImpl(java.awt.Component, java.lang.Object, int), 
remove(int), 
invalidate(), 
validate(), 
JComponent.revalidate()public void setComponentZOrder(Component comp, int index)
 If the component is a child of some other container, it is
 removed from that container before being added to this container.
 The important difference between this method and
 java.awt.Container.add(Component, int) is that this method
 doesn't call removeNotify on the component while
 removing it from its previous container unless necessary and when
 allowed by the underlying native windowing system. This way, if the
 component has the keyboard focus, it maintains the focus when
 moved to the new position.
 
 This property is guaranteed to apply only to lightweight
 non-Container components.
 
This method changes layout-related information, and therefore, invalidates the component hierarchy.
 Note: Not all platforms support changing the z-order of
 heavyweight components from one container into another without
 the call to removeNotify. There is no way to detect
 whether a platform supports this, so developers shouldn't make
 any assumptions.
comp - the component to be movedindex - the position in the container's list to
            insert the component, where getComponentCount()
            appends to the endNullPointerException - if comp is
            nullIllegalArgumentException - if comp is one of the
            container's parentsIllegalArgumentException - if index is not in
            the range [0, getComponentCount()] for moving
            between containers, or not in the range
            [0, getComponentCount()-1] for moving inside
            a containerIllegalArgumentException - if adding a container to itselfIllegalArgumentException - if adding a Window
            to a containergetComponentZOrder(java.awt.Component), 
invalidate()public int getComponentZOrder(Component comp)
comp - the component being queriednull
          or doesn't belong to the containersetComponentZOrder(java.awt.Component, int)public void add(Component comp, Object constraints)
addImpl(java.awt.Component, java.lang.Object, int).
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to display the added component.
comp - the component to be addedconstraints - an object expressing
                  layout constraints for this componentNullPointerException - if comp is nulladdImpl(java.awt.Component, java.lang.Object, int), 
invalidate(), 
validate(), 
JComponent.revalidate(), 
LayoutManagerpublic void add(Component comp, Object constraints, int index)
addImpl(java.awt.Component, java.lang.Object, int).
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to display the added component.
comp - the component to be addedconstraints - an object expressing layout constraints for thisindex - the position in the container's list at which to insert
 the component; -1 means insert at the end
 componentNullPointerException - if comp is nullIllegalArgumentException - if index is invalid (see
            addImpl(java.awt.Component, java.lang.Object, int) for details)addImpl(java.awt.Component, java.lang.Object, int), 
invalidate(), 
validate(), 
JComponent.revalidate(), 
remove(int), 
LayoutManagerprotected void addImpl(Component comp, Object constraints, int index)
addLayoutComponent
 method.
 
 The constraints are
 defined by the particular layout manager being used.  For
 example, the BorderLayout class defines five
 constraints: BorderLayout.NORTH,
 BorderLayout.SOUTH, BorderLayout.EAST,
 BorderLayout.WEST, and BorderLayout.CENTER.
 
 The GridBagLayout class requires a
 GridBagConstraints object.  Failure to pass
 the correct type of constraints object results in an
 IllegalArgumentException.
 
 If the current layout manager implements LayoutManager2, then
 LayoutManager2.addLayoutComponent(Component,Object) is invoked on
 it. If the current layout manager does not implement
 LayoutManager2, and constraints is a String, then
 LayoutManager.addLayoutComponent(String,Component) is invoked on it.
 
If the component is not an ancestor of this container and has a non-null parent, it is removed from its current parent before it is added to this container.
This is the method to override if a program needs to track every add request to a container as all other add methods defer to this one. An overriding method should usually include a call to the superclass's version of the method:
 super.addImpl(comp, constraints, index)
 
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to display the added component.
comp - the component to be addedconstraints - an object expressing layout constraints
                 for this componentindex - the position in the container's list at which to
                 insert the component, where -1
                 means append to the endIllegalArgumentException - if index is invalid;
            if comp is a child of this container, the valid
            range is [-1, getComponentCount()-1]; if component is
            not a child of this container, the valid range is
            [-1, getComponentCount()]IllegalArgumentException - if comp is an ancestor of
                                     this containerIllegalArgumentException - if adding a window to a containerNullPointerException - if comp is nulladd(Component), 
add(Component, int), 
add(Component, java.lang.Object), 
invalidate(), 
LayoutManager, 
LayoutManager2public void remove(int index)
index,
 from this container.
 This method also notifies the layout manager to remove the
 component from this container's layout via the
 removeLayoutComponent method.
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to reflect the changes.
index - the index of the component to be removedArrayIndexOutOfBoundsException - if index is not in
         range [0, getComponentCount()-1]add(java.awt.Component), 
invalidate(), 
validate(), 
getComponentCount()public void remove(Component comp)
removeLayoutComponent method.
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to reflect the changes.
comp - the component to be removedNullPointerException - if comp is nulladd(java.awt.Component), 
invalidate(), 
validate(), 
remove(int)public void removeAll()
removeLayoutComponent method.
 This method changes layout-related information, and therefore, invalidates the component hierarchy. If the container has already been displayed, the hierarchy must be validated thereafter in order to reflect the changes.
add(java.awt.Component), 
remove(int), 
invalidate()public LayoutManager getLayout()
doLayout(), 
setLayout(java.awt.LayoutManager)public void setLayout(LayoutManager mgr)
This method changes layout-related information, and therefore, invalidates the component hierarchy.
mgr - the specified layout managerdoLayout(), 
getLayout(), 
invalidate()public void doLayout()
validate method instead.doLayout in class ComponentLayoutManager.layoutContainer(java.awt.Container), 
setLayout(java.awt.LayoutManager), 
validate()@Deprecated public void layout()
doLayout().public boolean isValidateRoot()
 Layout-related changes, such as bounds of the validate root descendants,
 do not affect the layout of the validate root parent. This peculiarity
 enables the invalidate() method to stop invalidating the
 component hierarchy when the method encounters a validate root. However,
 to preserve backward compatibility this new optimized behavior is
 enabled only when the java.awt.smartInvalidate system property
 value is set to true.
 
 If a component hierarchy contains validate roots and the new optimized
 invalidate() behavior is enabled, the validate() method
 must be invoked on the validate root of a previously invalidated
 component to restore the validity of the hierarchy later. Otherwise,
 calling the validate() method on the top-level container (such
 as a Frame object) should be used to restore the validity of the
 component hierarchy.
 
 The Window class and the Applet class are the validate
 roots in AWT.  Swing introduces more validate roots.
invalidate(), 
Component.invalidate(), 
JComponent.isValidateRoot(), 
JComponent.revalidate()public void invalidate()
 If the LayoutManager installed on this container is an instance
 of the LayoutManager2 interface, then
 the LayoutManager2.invalidateLayout(Container) method is invoked
 on it supplying this Container as the argument.
 
 Afterwards this method marks this container invalid, and invalidates its
 ancestors. See the Component.invalidate() method for more details.
invalidate in class Componentvalidate(), 
layout(), 
LayoutManager2public void validate()
 Validating a container means laying out its subcomponents.
 Layout-related changes, such as setting the bounds of a component, or
 adding a component to the container, invalidate the container
 automatically.  Note that the ancestors of the container may be
 invalidated also (see Component.invalidate() for details.)
 Therefore, to restore the validity of the hierarchy, the validate() method should be invoked on the top-most invalid
 container of the hierarchy.
 
Validating the container may be a quite time-consuming operation. For performance reasons a developer may postpone the validation of the hierarchy till a set of layout-related operations completes, e.g. after adding all the children to the container.
 If this Container is not valid, this method invokes
 the validateTree method and marks this Container
 as valid. Otherwise, no action is performed.
validate in class Componentadd(java.awt.Component), 
invalidate(), 
isValidateRoot(), 
JComponent.revalidate(), 
validateTree()protected void validateTree()
validate.doLayout(), 
validate()public void setFont(Font f)
This method changes layout-related information, and therefore, invalidates the component hierarchy.
setFont in class Componentf - The font to become this container's font.Component.getFont(), 
invalidate()public Dimension getPreferredSize()
Component.setPreferredSize(Dimension)
 and this Container has a non-null LayoutManager,
 then LayoutManager.preferredLayoutSize(Container)
 is used to calculate the preferred size.
 Note: some implementations may cache the value returned from the
 LayoutManager.  Implementations that cache need not invoke
 preferredLayoutSize on the LayoutManager every time
 this method is invoked, rather the LayoutManager will only
 be queried after the Container becomes invalid.
getPreferredSize in class ComponentDimension that represents
                the preferred size of this container.getMinimumSize(), 
getMaximumSize(), 
getLayout(), 
LayoutManager.preferredLayoutSize(Container), 
Component.getPreferredSize()@Deprecated public Dimension preferredSize()
getPreferredSize().preferredSize in class Componentpublic Dimension getMinimumSize()
Component.setMinimumSize(Dimension)
 and this Container has a non-null LayoutManager,
 then LayoutManager.minimumLayoutSize(Container)
 is used to calculate the minimum size.
 Note: some implementations may cache the value returned from the
 LayoutManager.  Implementations that cache need not invoke
 minimumLayoutSize on the LayoutManager every time
 this method is invoked, rather the LayoutManager will only
 be queried after the Container becomes invalid.
getMinimumSize in class ComponentDimension that represents
                the minimum size of this container.getPreferredSize(), 
getMaximumSize(), 
getLayout(), 
LayoutManager.minimumLayoutSize(Container), 
Component.getMinimumSize()@Deprecated public Dimension minimumSize()
getMinimumSize().minimumSize in class Componentpublic Dimension getMaximumSize()
Component.setMaximumSize(Dimension)
 and the LayoutManager installed on this Container
 is an instance of LayoutManager2, then
 LayoutManager2.maximumLayoutSize(Container)
 is used to calculate the maximum size.
 Note: some implementations may cache the value returned from the
 LayoutManager2.  Implementations that cache need not invoke
 maximumLayoutSize on the LayoutManager2 every time
 this method is invoked, rather the LayoutManager2 will only
 be queried after the Container becomes invalid.
getMaximumSize in class ComponentDimension that represents
                the maximum size of this container.getPreferredSize(), 
getMinimumSize(), 
getLayout(), 
LayoutManager2.maximumLayoutSize(Container), 
Component.getMaximumSize()public float getAlignmentX()
getAlignmentX in class Componentpublic float getAlignmentY()
getAlignmentY in class Componentpublic void paint(Graphics g)
paint in class Componentg - the specified Graphics windowComponent.update(Graphics)public void update(Graphics g)
update in class Componentg - the specified Graphics windowComponent.update(Graphics)public void print(Graphics g)
print in class Componentg - the specified Graphics windowComponent.update(Graphics)public void paintComponents(Graphics g)
g - the graphics context.Component.paint(java.awt.Graphics), 
Component.paintAll(java.awt.Graphics)public void printComponents(Graphics g)
g - the graphics context.Component.print(java.awt.Graphics), 
Component.printAll(java.awt.Graphics)public void addContainerListener(ContainerListener l)
Refer to AWT Threading Issues for details on AWT's threading model.
l - the container listenerremoveContainerListener(java.awt.event.ContainerListener), 
getContainerListeners()public void removeContainerListener(ContainerListener l)
Refer to AWT Threading Issues for details on AWT's threading model.
l - the container listeneraddContainerListener(java.awt.event.ContainerListener), 
getContainerListeners()public ContainerListener[] getContainerListeners()
ContainerListeners
         or an empty array if no container
         listeners are currently registeredaddContainerListener(java.awt.event.ContainerListener), 
removeContainerListener(java.awt.event.ContainerListener)public <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListeners
 upon this Container.
 FooListeners are registered using the
 addFooListener method.
 
 You can specify the listenerType argument
 with a class literal, such as
 FooListener.class.
 For example, you can query a
 Container c
 for its container listeners with the following code:
 
ContainerListener[] cls = (ContainerListener[])(c.getListeners(ContainerListener.class));If no such listeners exist, this method returns an empty array.
getListeners in class ComponentlistenerType - the type of listeners requested; this parameter
          should specify an interface that descends from
          java.util.EventListenerFooListeners on this container,
          or an empty array if no such listeners have been addedClassCastException - if listenerType
          doesn't specify a class or interface that implements
          java.util.EventListenerNullPointerException - if listenerType is nullgetContainerListeners()protected void processEvent(AWTEvent e)
ContainerEvent, it invokes the
 processContainerEvent method, else it invokes
 its superclass's processEvent.
 Note that if the event parameter is null
 the behavior is unspecified and may result in an
 exception.
processEvent in class Componente - the eventComponent.processComponentEvent(java.awt.event.ComponentEvent), 
Component.processFocusEvent(java.awt.event.FocusEvent), 
Component.processKeyEvent(java.awt.event.KeyEvent), 
Component.processMouseEvent(java.awt.event.MouseEvent), 
Component.processMouseMotionEvent(java.awt.event.MouseEvent), 
Component.processInputMethodEvent(java.awt.event.InputMethodEvent), 
Component.processHierarchyEvent(java.awt.event.HierarchyEvent), 
Component.processMouseWheelEvent(java.awt.event.MouseWheelEvent)protected void processContainerEvent(ContainerEvent e)
addContainerListener
 enableEvents
 Note that if the event parameter is null
 the behavior is unspecified and may result in an
 exception.
e - the container eventComponent.enableEvents(long)@Deprecated public void deliverEvent(Event e)
dispatchEvent(AWTEvent e)deliverEvent in class Componentpublic Component getComponentAt(int x, int y)
getComponentAt in class Componentx - the x coordinatey - the y coordinateComponent.contains(int, int)@Deprecated public Component locate(int x, int y)
getComponentAt(int, int).public Component getComponentAt(Point p)
getComponentAt in class Componentp - the point.null if the component does
                 not contain the point.Component.contains(int, int)public Point getMousePosition(boolean allowChildren) throws HeadlessException
Container's
 coordinate space if the Container is under the mouse pointer,
 otherwise returns null.
 This method is similar to Component.getMousePosition() with the exception
 that it can take the Container's children into account.
 If allowChildren is false, this method will return
 a non-null value only if the mouse pointer is above the Container
 directly, not above the part obscured by children.
 If allowChildren is true, this method returns
 a non-null value if the mouse pointer is above Container or any
 of its descendants.allowChildren - true if children should be taken into accountComponent, or nullHeadlessException - if GraphicsEnvironment.isHeadless() returns trueComponent.getMousePosition()public Component findComponentAt(int x, int y)
The findComponentAt method is different from getComponentAt in that getComponentAt only searches the Container's immediate children; if the containing component is a Container, findComponentAt will search that child to find a nested component.
x - the x coordinatey - the y coordinateComponent.contains(int, int), 
getComponentAt(int, int)public Component findComponentAt(Point p)
The findComponentAt method is different from getComponentAt in that getComponentAt only searches the Container's immediate children; if the containing component is a Container, findComponentAt will search that child to find a nested component.
p - the point.NullPointerException - if p is nullComponent.contains(int, int), 
getComponentAt(int, int)public void addNotify()
addNotify in class ComponentComponent.isDisplayable(), 
removeNotify()public void removeNotify()
removeNotify in class ComponentComponent.isDisplayable(), 
addNotify()public boolean isAncestorOf(Component c)
c - the componenttrue if it is an ancestor;
             false otherwise.protected String paramString()
Container.
 This method is intended to be used only for debugging purposes, and the
 content and format of the returned string may vary between
 implementations. The returned string may be empty but may not be
 null.paramString in class Componentpublic void list(PrintStream out, int indent)
 The immediate children of the container are printed with
 an indentation of indent+1.  The children
 of those children are printed at indent+2
 and so on.
list in class Componentout - a print streamindent - the number of spaces to indentNullPointerException - if out is nullComponent.list(java.io.PrintStream, int)public void list(PrintWriter out, int indent)
 The immediate children of the container are printed with
 an indentation of indent+1.  The children
 of those children are printed at indent+2
 and so on.
list in class Componentout - a print writerindent - the number of spaces to indentNullPointerException - if out is nullComponent.list(java.io.PrintWriter, int)public void setFocusTraversalKeys(int id,
                                  Set<? extends AWTKeyStroke> keystrokes)
The default values for a Container's focus traversal keys are implementation-dependent. Sun recommends that all implementations for a particular native platform use the same default values. The recommendations for Windows and Unix are listed below. These recommendations are used in the Sun AWT implementations.
| Identifier | Meaning | Default | |
|---|---|---|---|
| KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS | Normal forward keyboard traversal | TAB on KEY_PRESSED, CTRL-TAB on KEY_PRESSED | |
| KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS | Normal reverse keyboard traversal | SHIFT-TAB on KEY_PRESSED, CTRL-SHIFT-TAB on KEY_PRESSED | |
| KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS | Go up one focus traversal cycle | none | |
| KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS | Go down one focus traversal cycle | none | 
Using the AWTKeyStroke API, client code can specify on which of two specific KeyEvents, KEY_PRESSED or KEY_RELEASED, the focus traversal operation will occur. Regardless of which KeyEvent is specified, however, all KeyEvents related to the focus traversal key, including the associated KEY_TYPED event, will be consumed, and will not be dispatched to any Container. It is a runtime error to specify a KEY_TYPED event as mapping to a focus traversal operation, or to map the same event to multiple default focus traversal operations.
If a value of null is specified for the Set, this Container inherits the Set from its parent. If all ancestors of this Container have null specified for the Set, then the current KeyboardFocusManager's default Set is used.
 This method may throw a ClassCastException if any Object
 in keystrokes is not an AWTKeyStroke.
setFocusTraversalKeys in class Componentid - one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or
        KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYSkeystrokes - the Set of AWTKeyStroke for the specified operationIllegalArgumentException - if id is not one of
         KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS,
         KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
         KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or
         KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS, or if keystrokes
         contains null, or if any keystroke represents a KEY_TYPED event,
         or if any keystroke already maps to another focus traversal
         operation for this ContainergetFocusTraversalKeys(int), 
KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, 
KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, 
KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, 
KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYSpublic Set<AWTKeyStroke> getFocusTraversalKeys(int id)
setFocusTraversalKeys for a full description of each key.)
 If a Set of traversal keys has not been explicitly defined for this Container, then this Container's parent's Set is returned. If no Set has been explicitly defined for any of this Container's ancestors, then the current KeyboardFocusManager's default Set is returned.
getFocusTraversalKeys in class Componentid - one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or
        KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYSIllegalArgumentException - if id is not one of
         KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS,
         KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
         KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or
         KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYSsetFocusTraversalKeys(int, java.util.Set<? extends java.awt.AWTKeyStroke>), 
KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, 
KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, 
KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, 
KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYSpublic boolean areFocusTraversalKeysSet(int id)
false, this Container is inheriting the
 Set from an ancestor, or from the current KeyboardFocusManager.areFocusTraversalKeysSet in class Componentid - one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or
        KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYStrue if the the Set of focus traversal keys for the
         given focus traversal operation has been explicitly defined for
         this Component; false otherwise.IllegalArgumentException - if id is not one of
         KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
        KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or
        KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYSpublic boolean isFocusCycleRoot(Container container)
true for both such
 Containers in this case.isFocusCycleRoot in class Componentcontainer - the Container to be testedtrue if the specified Container is a focus-cycle-
         root of this Container; false otherwiseisFocusCycleRoot()public void setFocusTraversalPolicy(FocusTraversalPolicy policy)
If this Container is not a focus cycle root, the policy will be remembered, but will not be used or inherited by this or any other Containers until this Container is made a focus cycle root.
policy - the new focus traversal policy for this ContainergetFocusTraversalPolicy(), 
setFocusCycleRoot(boolean), 
isFocusCycleRoot(java.awt.Container)public FocusTraversalPolicy getFocusTraversalPolicy()
setFocusTraversalPolicy(java.awt.FocusTraversalPolicy), 
setFocusCycleRoot(boolean), 
isFocusCycleRoot(java.awt.Container)public boolean isFocusTraversalPolicySet()
false, this
 Container will inherit its focus traversal policy from an ancestor.true if the focus traversal policy has been
         explicitly set for this Container; false otherwise.public void setFocusCycleRoot(boolean focusCycleRoot)
The alternative way to specify the traversal order of this Container's children is to make this Container a focus traversal policy provider.
focusCycleRoot - indicates whether this Container is the root of a
        focus traversal cycleisFocusCycleRoot(), 
setFocusTraversalPolicy(java.awt.FocusTraversalPolicy), 
getFocusTraversalPolicy(), 
ContainerOrderFocusTraversalPolicy, 
setFocusTraversalPolicyProvider(boolean)public boolean isFocusCycleRoot()
setFocusCycleRoot(boolean), 
setFocusTraversalPolicy(java.awt.FocusTraversalPolicy), 
getFocusTraversalPolicy(), 
ContainerOrderFocusTraversalPolicypublic final void setFocusTraversalPolicyProvider(boolean provider)
true will be used to acquire focus traversal policy
 instead of closest focus cycle root ancestor.provider - indicates whether this container will be used to
                provide focus traversal policysetFocusTraversalPolicy(java.awt.FocusTraversalPolicy), 
getFocusTraversalPolicy(), 
isFocusTraversalPolicyProvider()public final boolean isFocusTraversalPolicyProvider()
true then when
 keyboard focus manager searches container hierarchy for focus
 traversal policy and encounters this container before any other
 container with this property as true or focus cycle roots then
 its focus traversal policy will be used instead of focus cycle
 root's policy.true if this container provides focus traversal
         policy, false otherwisesetFocusTraversalPolicy(java.awt.FocusTraversalPolicy), 
getFocusTraversalPolicy(), 
setFocusCycleRoot(boolean), 
setFocusTraversalPolicyProvider(boolean)public void transferFocusDownCycle()
Component.requestFocus(), 
isFocusCycleRoot(java.awt.Container), 
setFocusCycleRoot(boolean)public void applyComponentOrientation(ComponentOrientation o)
ComponentOrientation property of this container
 and all components contained within it.
 This method changes layout-related information, and therefore, invalidates the component hierarchy.
applyComponentOrientation in class Componento - the new component orientation of this container and
        the components contained within it.NullPointerException - if orientation is null.Component.setComponentOrientation(java.awt.ComponentOrientation), 
Component.getComponentOrientation(), 
invalidate()public void addPropertyChangeListener(PropertyChangeListener listener)
If listener is null, no exception is thrown and no action is performed.
addPropertyChangeListener in class Componentlistener - the PropertyChangeListener to be addedComponent.removePropertyChangeListener(java.beans.PropertyChangeListener), 
addPropertyChangeListener(java.lang.String,java.beans.PropertyChangeListener)public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
If listener is null, no exception is thrown and no action is performed.
addPropertyChangeListener in class ComponentpropertyName - one of the property names listed abovelistener - the PropertyChangeListener to be addedaddPropertyChangeListener(java.beans.PropertyChangeListener), 
Component.removePropertyChangeListener(java.beans.PropertyChangeListener) 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, 2015, Oracle and/or its affiliates.  All rights reserved.