java.awt
Class Container

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable
Direct Known Subclasses:
BasicSplitPaneDivider, Box, CellRendererPane, DefaultTreeCellEditor.EditorContainer, JComponent, Panel, ScrollPane, Window

public class Container
extends Component

A generic Abstract Window Toolkit(AWT) container object is a component that can contain other AWT components.

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

Since:
JDK1.0
See Also:
add(java.awt.Component, int), getComponent(int), LayoutManager, Serialized Form

Inner Class Summary
protected  class Container.AccessibleAWTContainer
Container.AccessibleAWTContainer
Inner class of Container used to provide default support for accessibility. This class is not meant to be used directly by application developers, but is instead meant only to be subclassed by container developers.

The class used to obtain the accessible role for this object, as well as implementing many of the methods in the AccessibleContainer interface.

 
Inner classes inherited from class java.awt.Component
Component.AccessibleAWTComponent
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
Container
copy->  new Container()
copy->  <Container var> = new Container();
Constructs a new Container. Containers can be extended directly, but are lightweight in this case and must be contained by a parent somewhere higher up in the component tree that is native. (such as Frame for example).
 
Method Summary
 Component add(Component comp)
copy->  .add( )
copy->  <Component var>=<Container>.add(<Component comp>);
Adds the specified component to the end of this container.
Parameters:
comp - the component to be added.
Returns:
the component argument.
 Component add(Component comp, int index)
copy->  .add(, )
copy->  <Component var>=<Container>.add(<Component comp>, <int index>);
Adds the specified component to this container at the given position.
Parameters:
comp - the component to be added.
index - the position at which to insert the component, or -1 to insert the component at the end.
Returns:
the component comp
See Also:
remove(int)
 void add(Component comp, Object constraints)
copy->  .add(, )
copy->  <Container>.add(<Component comp>, <Object constraints>);
Adds the specified component to the end of this container. Also notifies the layout manager to add the component to this container's layout using the specified constraints object.
Parameters:
comp - the component to be added
constraints - an object expressing layout contraints for this component
Since:
JDK1.1
See Also:
LayoutManager
 void add(Component comp, Object constraints, int index)
copy->  .add(, , )
copy->  <Container>.add(<Component comp>, <Object constraints>, <int index>);
Adds the specified component to this container with the specified constraints at the specified index. Also notifies the layout manager to add the component to the this container's layout using the specified constraints object.
Parameters:
comp - the component to be added
constraints - an object expressing layout contraints for this
index - the position in the container's list at which to insert the component. -1 means insert at the end. component
See Also:
remove(int), LayoutManager
 Component add(String name, Component comp)
copy->  .add(, )
copy->  <Component var>=<Container>.add(<String name>, <Component comp>);
Adds the specified component to this container. It is strongly advised to use the 1.1 method, add(Component, Object), in place of this method.
 void addContainerListener(ContainerListener l)
copy->  .addContainerListener( )
copy->  <Container>.addContainerListener(<ContainerListener l>);
Adds the specified container listener to receive container events from this container. If l is null, no exception is thrown and no action is performed.
Parameters:
l - the container listener
protected  void addImpl(Component comp, Object constraints, int index)
copy->  .addImpl(, , )
copy->  <Container>.addImpl(<Component comp>, <Object constraints>, <int index>);
Adds the specified component to this container at the specified index. This method also notifies the layout manager to add the component to this container's layout using the specified constraints object.

This is the method to override if a program needs to track every add request to a container. An overriding method should usually include a call to the superclass's version of the method:

super.addImpl(comp, constraints, index)

Parameters:
comp - the component to be added.
constraints - an object expressing layout contraints for this component.
index - the position in the container's list at which to insert the component, where -1 means insert at the end.
Since:
JDK1.1
See Also:
add(java.awt.Component), add(java.awt.Component, int), add(java.awt.Component, java.lang.Object), LayoutManager
 void addNotify()
copy->  .addNotify()
copy->  <Container>.addNotify();
Makes this Container displayable by connecting it to a native screen resource. Making a container displayable will cause any of its children to be made displayable. This method is called internally by the toolkit and should not be called directly by programs.
Overrides:
addNotify in class Component
See Also:
Component.isDisplayable(), removeNotify()
 int countComponents()
copy->  .countComponents()
copy->  <int var>=<Container>.countComponents();
Deprecated. As of JDK version 1.1, replaced by getComponentCount().

 void deliverEvent(Event e)
copy->  .deliverEvent( )
copy->  <Container>.deliverEvent(<Event e>);
Deprecated. As of JDK version 1.1, replaced by dispatchEvent(AWTEvent e)

Overrides:
deliverEvent in class Component
 void doLayout()
copy->  .doLayout()
copy->  <Container>.doLayout();
Causes this container to lay out its components. Most programs should not call this method directly, but should invoke the validate method instead.
Overrides:
doLayout in class Component
Since:
JDK1.1
See Also:
LayoutManager.layoutContainer(java.awt.Container), setLayout(java.awt.LayoutManager), validate()
 Component findComponentAt(int x, int y)
copy->  .findComponentAt(, )
copy->  <Component var>=<Container>.findComponentAt(<int x>, <int y>);
Locates the visible child component that contains the specified position. The top-most child component is returned in the case where there is overlap in the components. If the containing child component is a Container, this method will continue searching for the deepest nested child component. Components which are not visible are ignored during the search.

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.

Parameters:
x - the x coordinate
y - the y coordinate
Returns:
null if the component does not contain the position. If there is no child component at the requested point and the point is within the bounds of the container the container itself is returned.
Since:
1.2
See Also:
Component.contains(int, int), getComponentAt
 Component findComponentAt(Point p)
copy->  .findComponentAt( )
copy->  <Component var>=<Container>.findComponentAt(<Point p>);
Locates the visible child component that contains the specified point. The top-most child component is returned in the case where there is overlap in the components. If the containing child component is a Container, this method will continue searching for the deepest nested child component. Components which are not visible are ignored during the search.

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.

Parameters:
p - the point.
Returns:
null if the component does not contain the position. If there is no child component at the requested point and the point is within the bounds of the container the container itself is returned.
Since:
1.2
See Also:
Component.contains(int, int), getComponentAt
 float getAlignmentX()
copy->  .getAlignmentX()
copy->  <float var>=<Container>.getAlignmentX();
Returns the alignment along the x axis. This specifies how the component would like to be aligned relative to other components. The value should be a number between 0 and 1 where 0 represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is centered, etc.
Overrides:
getAlignmentX in class Component
 float getAlignmentY()
copy->  .getAlignmentY()
copy->  <float var>=<Container>.getAlignmentY();
Returns the alignment along the y axis. This specifies how the component would like to be aligned relative to other components. The value should be a number between 0 and 1 where 0 represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is centered, etc.
Overrides:
getAlignmentY in class Component
 Component getComponent(int n)
copy->  .getComponent( )
copy->  <Component var>=<Container>.getComponent(<int n>);
Gets the nth component in this container.
Parameters:
n - the index of the component to get.
Returns:
the nth component in this container.
Throws:
ArrayIndexOutOfBoundsException - if the nth value does not exist.
 Component getComponentAt(int x, int y)
copy->  .getComponentAt(, )
copy->  <Component var>=<Container>.getComponentAt(<int x>, <int y>);
Locates the component that contains the x,y position. The top-most child component is returned in the case where there is overlap in the components. This is determined by finding the component closest to the index 0 that claims to contain the given point via Component.contains(), except that Components which have native peers take precedence over those which do not (i.e., lightweight Components).
Overrides:
getComponentAt in class Component
Parameters:
x - the x coordinate
y - the y coordinate
Returns:
null if the component does not contain the position. If there is no child component at the requested point and the point is within the bounds of the container the container itself is returned; otherwise the top-most child is returned.
Since:
JDK1.1
See Also:
Component.contains(int, int)
 Component getComponentAt(Point p)
copy->  .getComponentAt( )
copy->  <Component var>=<Container>.getComponentAt(<Point p>);
Gets the component that contains the specified point.
Overrides:
getComponentAt in class Component
Parameters:
p - the point.
Returns:
returns the component that contains the point, or null if the component does not contain the point.
Since:
JDK1.1
See Also:
Component.contains(int, int)
 int getComponentCount()
copy->  .getComponentCount()
copy->  <int var>=<Container>.getComponentCount();
Gets the number of components in this panel.
Returns:
the number of components in this panel.
Since:
JDK1.1
See Also:
getComponent(int)
 Component[] getComponents()
copy->  .getComponents()
copy->  <Component var>=<Container>.getComponents();
Gets all the components in this container.
Returns:
an array of all the components in this container.
 Insets getInsets()
copy->  .getInsets()
copy->  <Insets var>=<Container>.getInsets();
Determines the insets of this container, which indicate the size of the container's border.

A Frame object, for example, has a top inset that corresponds to the height of the frame's title bar.

Returns:
the insets of this container.
Since:
JDK1.1
See Also:
Insets, LayoutManager
 LayoutManager getLayout()
copy->  .getLayout()
copy->  <LayoutManager var>=<Container>.getLayout();
Gets the layout manager for this container.
See Also:
doLayout(), setLayout(java.awt.LayoutManager)
 EventListener[] getListeners(Class listenerType)
copy->  .getListeners( )
copy->  <EventListener var>=<Container>.getListeners(<Class listenerType>);
Return an array of all the listeners that were added to the Container with addXXXListener(), where XXX is the name of the listenerType argument. For example, to get all of the ContainerListener(s) for the given Container c, one would write:
 ContainerListener[] cls = (ContainerListener[])(c.getListeners(ContainerListener.class))
 
If no such listener list exists, then an empty array is returned.
Overrides:
getListeners in class Component
Parameters:
listenerType - Type of listeners requested
Returns:
all of the listeners of the specified type supported by this container
Since:
1.3
 Dimension getMaximumSize()
copy->  .getMaximumSize()
copy->  <Dimension var>=<Container>.getMaximumSize();
Returns the maximum size of this container.
Overrides:
getMaximumSize in class Component
See Also:
getPreferredSize()
 Dimension getMinimumSize()
copy->  .getMinimumSize()
copy->  <Dimension var>=<Container>.getMinimumSize();
Returns the minimum size of this container.
Overrides:
getMinimumSize in class Component
Returns:
an instance of Dimension that represents the minimum size of this container.
Since:
JDK1.1
See Also:
getPreferredSize(), getLayout(), LayoutManager.minimumLayoutSize(java.awt.Container), Component.getMinimumSize()
 Dimension getPreferredSize()
copy->  .getPreferredSize()
copy->  <Dimension var>=<Container>.getPreferredSize();
Returns the preferred size of this container.
Overrides:
getPreferredSize in class Component
Returns:
an instance of Dimension that represents the preferred size of this container.
See Also:
getMinimumSize(), getLayout(), LayoutManager.preferredLayoutSize(java.awt.Container), Component.getPreferredSize()
 Insets insets()
copy->  .insets()
copy->  <Insets var>=<Container>.insets();
Deprecated. As of JDK version 1.1, replaced by getInsets().

 void invalidate()
copy->  .invalidate()
copy->  <Container>.invalidate();
Invalidates the container. The container and all parents above it are marked as needing to be laid out. This method can be called often, so it needs to execute quickly.
Overrides:
invalidate in class Component
See Also:
validate(), layout(), LayoutManager
 boolean isAncestorOf(Component c)
copy->  .isAncestorOf( )
copy->  <boolean var>=<Container>.isAncestorOf(<Component c>);
Checks if the component is contained in the component hierarchy of this container.
Parameters:
c - the component
Returns:
true if it is an ancestor; false otherwise.
Since:
JDK1.1
 void layout()
copy->  .layout()
copy->  <Container>.layout();
Deprecated. As of JDK version 1.1, replaced by doLayout().

Overrides:
layout in class Component
 void list(PrintStream out, int indent)
copy->  .list(, )
copy->  <Container>.list(<PrintStream out>, <int indent>);
Prints a listing of this container to the specified output stream. The listing starts at the specified indentation.
Overrides:
list in class Component
Parameters:
out - a print stream.
indent - the number of spaces to indent.
Since:
JDK
See Also:
Component.list(java.io.PrintStream, int)
 void list(PrintWriter out, int indent)
copy->  .list(, )
copy->  <Container>.list(<PrintWriter out>, <int indent>);
Prints out a list, starting at the specified indention, to the specified print writer.
Overrides:
list in class Component
Following copied from class: java.awt.Component
Parameters:
out - The print writer to print to.
indent - The number of spaces to indent.
See Also:
PrintStream.println(java.lang.Object)
 Component locate(int x, int y)
copy->  .locate(, )
copy->  <Component var>=<Container>.locate(<int x>, <int y>);
Deprecated. As of JDK version 1.1, replaced by getComponentAt(int, int).

Overrides:
locate in class Component
 Dimension minimumSize()
copy->  .minimumSize()
copy->  <Dimension var>=<Container>.minimumSize();
Deprecated. As of JDK version 1.1, replaced by getMinimumSize().

Overrides:
minimumSize in class Component
 void paint(Graphics g)
copy->  .paint( )
copy->  <Container>.paint(<Graphics g>);
Paints the container. This forwards the paint to any lightweight components that are children of this container. If this method is reimplemented, super.paint(g) should be called so that lightweight components are properly rendered. If a child component is entirely clipped by the current clipping setting in g, paint() will not be forwarded to that child.
Overrides:
paint in class Component
Parameters:
g - the specified Graphics window
See Also:
Component.update(java.awt.Graphics)
 void paintComponents(Graphics g)
copy->  .paintComponents( )
copy->  <Container>.paintComponents(<Graphics g>);
Paints each of the components in this container.
Parameters:
g - the graphics context.
See Also:
Component.paint(java.awt.Graphics), Component.paintAll(java.awt.Graphics)
protected  String paramString()
copy->  .paramString()
copy->  <String var>=<Container>.paramString();
Returns the parameter string representing the state of this container. This string is useful for debugging.
Overrides:
paramString in class Component
Returns:
the parameter string of this container.
 Dimension preferredSize()
copy->  .preferredSize()
copy->  <Dimension var>=<Container>.preferredSize();
Deprecated. As of JDK version 1.1, replaced by getPreferredSize().

Overrides:
preferredSize in class Component
 void print(Graphics g)
copy->  .print( )
copy->  <Container>.print(<Graphics g>);
Prints the container. This forwards the print to any lightweight components that are children of this container. If this method is reimplemented, super.print(g) should be called so that lightweight components are properly rendered. If a child component is entirely clipped by the current clipping setting in g, print() will not be forwarded to that child.
Overrides:
print in class Component
Parameters:
g - the specified Graphics window
See Also:
Component.update(java.awt.Graphics)
 void printComponents(Graphics g)
copy->  .printComponents( )
copy->  <Container>.printComponents(<Graphics g>);
Prints each of the components in this container.
Parameters:
g - the graphics context.
See Also:
Component.print(java.awt.Graphics), Component.printAll(java.awt.Graphics)
protected  void processContainerEvent(ContainerEvent e)
copy->  .processContainerEvent( )
copy->  <Container>.processContainerEvent(<ContainerEvent e>);
Processes container events occurring on this container by dispatching them to any registered ContainerListener objects. NOTE: This method will not be called unless container events are enabled for this component; this happens when one of the following occurs: a) A ContainerListener object is registered via addContainerListener() b) Container events are enabled via enableEvents()
Parameters:
e - the container event
See Also:
Component.enableEvents(long)
protected  void processEvent(AWTEvent e)
copy->  .processEvent( )
copy->  <Container>.processEvent(<AWTEvent e>);
Processes events on this container. If the event is a ContainerEvent, it invokes the processContainerEvent method, else it invokes its superclass's processEvent.
Overrides:
processEvent in class Component
Parameters:
e - the event
 void remove(Component comp)
copy->  .remove( )
copy->  <Container>.remove(<Component comp>);
Removes the specified component from this container.
Parameters:
comp - the component to be removed
See Also:
add(java.awt.Component)
 void remove(int index)
copy->  .remove( )
copy->  <Container>.remove(<int index>);
Removes the component, specified by index, from this container.
Parameters:
index - the index of the component to be removed.
Since:
JDK1.1
See Also:
add(java.awt.Component)
 void removeAll()
copy->  .removeAll()
copy->  <Container>.removeAll();
Removes all the components from this container.
See Also:
add(java.awt.Component), remove(int)
 void removeContainerListener(ContainerListener l)
copy->  .removeContainerListener( )
copy->  <Container>.removeContainerListener(<ContainerListener l>);
Removes the specified container listener so it no longer receives container events from this container. If l is null, no exception is thrown and no action is performed.
Parameters:
l - the container listener
 void removeNotify()
copy->  .removeNotify()
copy->  <Container>.removeNotify();
Makes this Container undisplayable by removing its connection to its native screen resource. Make a container undisplayable will cause any of its children to be made undisplayable. This method is called by the toolkit internally and should not be called directly by programs.
Overrides:
removeNotify in class Component
See Also:
Component.isDisplayable(), addNotify()
 void setFont(Font f)
copy->  .setFont( )
copy->  <Container>.setFont(<Font f>);
Sets the font of this container.
Overrides:
setFont in class Component
Parameters:
f - The font to become this container's font.
Since:
JDK1.0
See Also:
Component.getFont()
 void setLayout(LayoutManager mgr)
copy->  .setLayout( )
copy->  <Container>.setLayout(<LayoutManager mgr>);
Sets the layout manager for this container.
Parameters:
mgr - the specified layout manager
See Also:
doLayout(), getLayout()
 void update(Graphics g)
copy->  .update( )
copy->  <Container>.update(<Graphics g>);
Updates the container. This forwards the update to any lightweight components that are children of this container. If this method is reimplemented, super.update(g) should be called so that lightweight components are properly rendered. If a child component is entirely clipped by the current clipping setting in g, update() will not be forwarded to that child.
Overrides:
update in class Component
Parameters:
g - the specified Graphics window
See Also:
Component.update(java.awt.Graphics)
 void validate()
copy->  .validate()
copy->  <Container>.validate();
Validates this container and all of its subcomponents.

AWT uses validate to cause a container to lay out its subcomponents again after the components it contains have been added to or modified.

Overrides:
validate in class Component
See Also:
validate(), Component.invalidate()
protected  void validateTree()
copy->  .validateTree()
copy->  <Container>.validateTree();
Recursively descends the container tree and recomputes the layout for any subtrees marked as needing it (those marked as invalid). Synchronization should be provided by the method that calls this one: validate.
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getAccessibleContext, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait