java.awt
Class Component

java.lang.Object sample code for java.lang.Object definition code for java.lang.Object 
  extended by java.awt.Component
All Implemented Interfaces:
ImageObserver sample code for java.awt.image.ImageObserver definition code for java.awt.image.ImageObserver , MenuContainer sample code for java.awt.MenuContainer definition code for java.awt.MenuContainer , Serializable sample code for java.io.Serializable definition code for java.io.Serializable
Direct Known Subclasses:
Button sample code for java.awt.Button definition code for java.awt.Button , Canvas sample code for java.awt.Canvas definition code for java.awt.Canvas , Checkbox sample code for java.awt.Checkbox definition code for java.awt.Checkbox , Choice sample code for java.awt.Choice definition code for java.awt.Choice , Container sample code for java.awt.Container definition code for java.awt.Container , Label sample code for java.awt.Label definition code for java.awt.Label , List sample code for java.awt.List definition code for java.awt.List , Scrollbar sample code for java.awt.Scrollbar definition code for java.awt.Scrollbar , TextComponent sample code for java.awt.TextComponent definition code for java.awt.TextComponent

public abstract class Component
extends Object sample code for java.lang.Object definition code for java.lang.Object
implements ImageObserver sample code for java.awt.image.ImageObserver definition code for java.awt.image.ImageObserver , MenuContainer sample code for java.awt.MenuContainer definition code for java.awt.MenuContainer , Serializable sample code for java.io.Serializable definition code for java.io.Serializable

A component is an object having a graphical representation that can be displayed on the screen and that can interact with the user. Examples of components are the buttons, checkboxes, and scrollbars of a typical graphical user interface.

The Component class is the abstract superclass of the nonmenu-related Abstract Window Toolkit components. Class Component can also be extended directly to create a lightweight component. A lightweight component is a component that is not associated with a native opaque window.

Serialization

It is important to note that only AWT listeners which conform to the Serializable protocol will be saved when the object is stored. If an AWT object has listeners that aren't marked serializable, they will be dropped at writeObject time. Developers will need, as always, to consider the implications of making an object serializable. One situation to watch out for is this:
    import java.awt.*;
    import java.awt.event.*;
    import java.io.Serializable;
    
    class MyApp implements ActionListener, Serializable
    {
        BigObjectThatShouldNotBeSerializedWithAButton bigOne;
        Button aButton = new Button();
      
        MyApp()
        {
            // Oops, now aButton has a listener with a reference
            // to bigOne!
            aButton.addActionListener(this);
        }
    
        public void actionPerformed(ActionEvent e)
        {
            System.out.println("Hello There");
        }
    }
 
In this example, serializing aButton by itself will cause MyApp and everything it refers to to be serialized as well. The problem is that the listener is serializable by coincidence, not by design. To separate the decisions about MyApp and the ActionListener being serializable one can use a nested class, as in the following example:
    import java.awt.*;
    import java.awt.event.*;
    import java.io.Serializable;

    class MyApp java.io.Serializable
    {
         BigObjectThatShouldNotBeSerializedWithAButton bigOne;
         Button aButton = new Button();

         class MyActionListener implements ActionListener
         {
             public void actionPerformed(ActionEvent e)
             {
                 System.out.println("Hello There");
             }
         }
 
         MyApp()
         {
             aButton.addActionListener(new MyActionListener());
         }
    }
 

Note: For more information on the paint mechanisms utilitized by AWT and Swing, including information on how to write the most efficient painting code, see Painting in AWT and Swing.

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.

See Also:
Serialized Form

Nested Class Summary
protected  class Component.AccessibleAWTComponent sample code for java.awt.Component.AccessibleAWTComponent definition code for java.awt.Component.AccessibleAWTComponent
          Inner class of Component used to provide default support for accessibility.
protected  class Component.BltBufferStrategy sample code for java.awt.Component.BltBufferStrategy definition code for java.awt.Component.BltBufferStrategy
          Inner class for blitting offscreen surfaces to a component.
protected  class Component.FlipBufferStrategy sample code for java.awt.Component.FlipBufferStrategy definition code for java.awt.Component.FlipBufferStrategy
          Inner class for flipping buffers on a component.
 
Field Summary
static float BOTTOM_ALIGNMENT sample code for java.awt.Component.BOTTOM_ALIGNMENT definition code for java.awt.Component.BOTTOM_ALIGNMENT
          Ease-of-use constant for getAlignmentY.
static float CENTER_ALIGNMENT sample code for java.awt.Component.CENTER_ALIGNMENT definition code for java.awt.Component.CENTER_ALIGNMENT
          Ease-of-use constant for getAlignmentY and getAlignmentX.
static float LEFT_ALIGNMENT sample code for java.awt.Component.LEFT_ALIGNMENT definition code for java.awt.Component.LEFT_ALIGNMENT
          Ease-of-use constant for getAlignmentX.
static float RIGHT_ALIGNMENT sample code for java.awt.Component.RIGHT_ALIGNMENT definition code for java.awt.Component.RIGHT_ALIGNMENT
          Ease-of-use constant for getAlignmentX.
static float TOP_ALIGNMENT sample code for java.awt.Component.TOP_ALIGNMENT definition code for java.awt.Component.TOP_ALIGNMENT
          Ease-of-use constant for getAlignmentY().
 
Fields inherited from interface java.awt.image.ImageObserver sample code for java.awt.image.ImageObserver definition code for java.awt.image.ImageObserver
ABORT sample code for java.awt.image.ImageObserver.ABORT definition code for java.awt.image.ImageObserver.ABORT , ALLBITS sample code for java.awt.image.ImageObserver.ALLBITS definition code for java.awt.image.ImageObserver.ALLBITS , ERROR sample code for java.awt.image.ImageObserver.ERROR definition code for java.awt.image.ImageObserver.ERROR , FRAMEBITS sample code for java.awt.image.ImageObserver.FRAMEBITS definition code for java.awt.image.ImageObserver.FRAMEBITS , HEIGHT sample code for java.awt.image.ImageObserver.HEIGHT definition code for java.awt.image.ImageObserver.HEIGHT , PROPERTIES sample code for java.awt.image.ImageObserver.PROPERTIES definition code for java.awt.image.ImageObserver.PROPERTIES , SOMEBITS sample code for java.awt.image.ImageObserver.SOMEBITS definition code for java.awt.image.ImageObserver.SOMEBITS , WIDTH sample code for java.awt.image.ImageObserver.WIDTH definition code for java.awt.image.ImageObserver.WIDTH
 
Constructor Summary
protected Component sample code for java.awt.Component.Component() definition code for java.awt.Component.Component() ()
          Constructs a new component.
 
Method Summary
 boolean action sample code for java.awt.Component.action(java.awt.Event, java.lang.Object) definition code for java.awt.Component.action(java.awt.Event, java.lang.Object) (Event sample code for java.awt.Event definition code for java.awt.Event  evt, Object sample code for java.lang.Object definition code for java.lang.Object  what)
          Deprecated. As of JDK version 1.1, should register this component as ActionListener on component which fires action events.
 void add sample code for java.awt.Component.add(java.awt.PopupMenu) definition code for java.awt.Component.add(java.awt.PopupMenu) (PopupMenu sample code for java.awt.PopupMenu definition code for java.awt.PopupMenu  popup)
          Adds the specified popup menu to the component.
 void addComponentListener sample code for java.awt.Component.addComponentListener(java.awt.event.ComponentListener) definition code for java.awt.Component.addComponentListener(java.awt.event.ComponentListener) (ComponentListener sample code for java.awt.event.ComponentListener definition code for java.awt.event.ComponentListener  l)
          Adds the specified component listener to receive component events from this component.
 void addFocusListener sample code for java.awt.Component.addFocusListener(java.awt.event.FocusListener) definition code for java.awt.Component.addFocusListener(java.awt.event.FocusListener) (FocusListener sample code for java.awt.event.FocusListener definition code for java.awt.event.FocusListener  l)
          Adds the specified focus listener to receive focus events from this component when this component gains input focus.
 void addHierarchyBoundsListener sample code for java.awt.Component.addHierarchyBoundsListener(java.awt.event.HierarchyBoundsListener) definition code for java.awt.Component.addHierarchyBoundsListener(java.awt.event.HierarchyBoundsListener) (HierarchyBoundsListener sample code for java.awt.event.HierarchyBoundsListener definition code for java.awt.event.HierarchyBoundsListener  l)
          Adds the specified hierarchy bounds listener to receive hierarchy bounds events from this component when the hierarchy to which this container belongs changes.
 void addHierarchyListener sample code for java.awt.Component.addHierarchyListener(java.awt.event.HierarchyListener) definition code for java.awt.Component.addHierarchyListener(java.awt.event.HierarchyListener) (HierarchyListener sample code for java.awt.event.HierarchyListener definition code for java.awt.event.HierarchyListener  l)
          Adds the specified hierarchy listener to receive hierarchy changed events from this component when the hierarchy to which this container belongs changes.
 void addInputMethodListener sample code for java.awt.Component.addInputMethodListener(java.awt.event.InputMethodListener) definition code for java.awt.Component.addInputMethodListener(java.awt.event.InputMethodListener) (InputMethodListener sample code for java.awt.event.InputMethodListener definition code for java.awt.event.InputMethodListener  l)
          Adds the specified input method listener to receive input method events from this component.
 void addKeyListener sample code for java.awt.Component.addKeyListener(java.awt.event.KeyListener) definition code for java.awt.Component.addKeyListener(java.awt.event.KeyListener) (KeyListener sample code for java.awt.event.KeyListener definition code for java.awt.event.KeyListener  l)
          Adds the specified key listener to receive key events from this component.
 void addMouseListener sample code for java.awt.Component.addMouseListener(java.awt.event.MouseListener) definition code for java.awt.Component.addMouseListener(java.awt.event.MouseListener) (MouseListener sample code for java.awt.event.MouseListener definition code for java.awt.event.MouseListener  l)
          Adds the specified mouse listener to receive mouse events from this component.
 void addMouseMotionListener sample code for java.awt.Component.addMouseMotionListener(java.awt.event.MouseMotionListener) definition code for java.awt.Component.addMouseMotionListener(java.awt.event.MouseMotionListener) (MouseMotionListener sample code for java.awt.event.MouseMotionListener definition code for java.awt.event.MouseMotionListener  l)
          Adds the specified mouse motion listener to receive mouse motion events from this component.
 void addMouseWheelListener sample code for java.awt.Component.addMouseWheelListener(java.awt.event.MouseWheelListener) definition code for java.awt.Component.addMouseWheelListener(java.awt.event.MouseWheelListener) (MouseWheelListener sample code for java.awt.event.MouseWheelListener definition code for java.awt.event.MouseWheelListener  l)
          Adds the specified mouse wheel listener to receive mouse wheel events from this component.
 void addNotify sample code for java.awt.Component.addNotify() definition code for java.awt.Component.addNotify() ()
          Makes this Component displayable by connecting it to a native screen resource.
 void addPropertyChangeListener sample code for java.awt.Component.addPropertyChangeListener(java.beans.PropertyChangeListener) definition code for java.awt.Component.addPropertyChangeListener(java.beans.PropertyChangeListener) (PropertyChangeListener sample code for java.beans.PropertyChangeListener definition code for java.beans.PropertyChangeListener  listener)
          Adds a PropertyChangeListener to the listener list.
 void addPropertyChangeListener sample code for java.awt.Component.addPropertyChangeListener(java.lang.String, java.beans.PropertyChangeListener) definition code for java.awt.Component.addPropertyChangeListener(java.lang.String, java.beans.PropertyChangeListener) (String sample code for java.lang.String definition code for java.lang.String  propertyName, PropertyChangeListener sample code for java.beans.PropertyChangeListener definition code for java.beans.PropertyChangeListener  listener)
          Adds a PropertyChangeListener to the listener list for a specific property.
 void applyComponentOrientation sample code for java.awt.Component.applyComponentOrientation(java.awt.ComponentOrientation) definition code for java.awt.Component.applyComponentOrientation(java.awt.ComponentOrientation) (ComponentOrientation sample code for java.awt.ComponentOrientation definition code for java.awt.ComponentOrientation  orientation)
          Sets the ComponentOrientation property of this component and all components contained within it.
 boolean areFocusTraversalKeysSet sample code for java.awt.Component.areFocusTraversalKeysSet(int) definition code for java.awt.Component.areFocusTraversalKeysSet(int) (int id)
          Returns whether the Set of focus traversal keys for the given focus traversal operation has been explicitly defined for this Component.
 Rectangle sample code for java.awt.Rectangle definition code for java.awt.Rectangle bounds sample code for java.awt.Component.bounds() definition code for java.awt.Component.bounds() ()
          Deprecated. As of JDK version 1.1, replaced by getBounds().
 int checkImage sample code for java.awt.Component.checkImage(java.awt.Image, java.awt.image.ImageObserver) definition code for java.awt.Component.checkImage(java.awt.Image, java.awt.image.ImageObserver) (Image sample code for java.awt.Image definition code for java.awt.Image  image, ImageObserver sample code for java.awt.image.ImageObserver definition code for java.awt.image.ImageObserver  observer)
          Returns the status of the construction of a screen representation of the specified image.
 int checkImage sample code for java.awt.Component.checkImage(java.awt.Image, int, int, java.awt.image.ImageObserver) definition code for java.awt.Component.checkImage(java.awt.Image, int, int, java.awt.image.ImageObserver) (Image sample code for java.awt.Image definition code for java.awt.Image  image, int width, int height, ImageObserver sample code for java.awt.image.ImageObserver definition code for java.awt.image.ImageObserver  observer)
          Returns the status of the construction of a screen representation of the specified image.
protected  AWTEvent sample code for java.awt.AWTEvent definition code for java.awt.AWTEvent coalesceEvents sample code for java.awt.Component.coalesceEvents(java.awt.AWTEvent, java.awt.AWTEvent) definition code for java.awt.Component.coalesceEvents(java.awt.AWTEvent, java.awt.AWTEvent) (AWTEvent sample code for java.awt.AWTEvent definition code for java.awt.AWTEvent  existingEvent, AWTEvent sample code for java.awt.AWTEvent definition code for java.awt.AWTEvent  newEvent)
          Potentially coalesce an event being posted with an existing event.
 boolean contains sample code for java.awt.Component.contains(int, int) definition code for java.awt.Component.contains(int, int) (int x, int y)
          Checks whether this component "contains" the specified point, where x and y are defined to be relative to the coordinate system of this component.
 boolean contains sample code for java.awt.Component.contains(java.awt.Point) definition code for java.awt.Component.contains(java.awt.Point) (Point sample code for java.awt.Point definition code for java.awt.Point  p)
          Checks whether this component "contains" the specified point, where the point's x and y coordinates are defined to be relative to the coordinate system of this component.
 Image sample code for java.awt.Image definition code for java.awt.Image createImage sample code for java.awt.Component.createImage(java.awt.image.ImageProducer) definition code for java.awt.Component.createImage(java.awt.image.ImageProducer) (ImageProducer sample code for java.awt.image.ImageProducer definition code for java.awt.image.ImageProducer  producer)
          Creates an image from the specified image producer.
 Image sample code for java.awt.Image definition code for java.awt.Image createImage sample code for java.awt.Component.createImage(int, int) definition code for java.awt.Component.createImage(int, int) (int width, int height)
          Creates an off-screen drawable image to be used for double buffering.
 VolatileImage sample code for java.awt.image.VolatileImage definition code for java.awt.image.VolatileImage createVolatileImage sample code for java.awt.Component.createVolatileImage(int, int) definition code for java.awt.Component.createVolatileImage(int, int) (int width, int height)
          Creates a volatile off-screen drawable image to be used for double buffering.
 VolatileImage sample code for java.awt.image.VolatileImage definition code for java.awt.image.VolatileImage createVolatileImage sample code for java.awt.Component.createVolatileImage(int, int, java.awt.ImageCapabilities) definition code for java.awt.Component.createVolatileImage(int, int, java.awt.ImageCapabilities) (int width, int height, ImageCapabilities sample code for java.awt.ImageCapabilities definition code for java.awt.ImageCapabilities  caps)
          Creates a volatile off-screen drawable image, with the given capabilities.
 void deliverEvent sample code for java.awt.Component.deliverEvent(java.awt.Event) definition code for java.awt.Component.deliverEvent(java.awt.Event) (Event sample code for java.awt.Event definition code for java.awt.Event  e)
          Deprecated. As of JDK version 1.1, replaced by dispatchEvent(AWTEvent e).
 void disable sample code for java.awt.Component.disable() definition code for java.awt.Component.disable() ()
          Deprecated. As of JDK version 1.1, replaced by setEnabled(boolean).
protected  void disableEvents sample code for java.awt.Component.disableEvents(long) definition code for java.awt.Component.disableEvents(long) (long eventsToDisable)
          Disables the events defined by the specified event mask parameter from being delivered to this component.
 void dispatchEvent sample code for java.awt.Component.dispatchEvent(java.awt.AWTEvent) definition code for java.awt.Component.dispatchEvent(java.awt.AWTEvent) (AWTEvent sample code for java.awt.AWTEvent definition code for java.awt.AWTEvent  e)
          Dispatches an event to this component or one of its sub components.
 void doLayout sample code for java.awt.Component.doLayout() definition code for java.awt.Component.doLayout() ()
          Prompts the layout manager to lay out this component.
 void enable sample code for java.awt.Component.enable() definition code for java.awt.Component.enable() ()
          Deprecated. As of JDK version 1.1, replaced by setEnabled(boolean).
 void enable sample code for java.awt.Component.enable(boolean) definition code for java.awt.Component.enable(boolean) (boolean b)
          Deprecated. As of JDK version 1.1, replaced by setEnabled(boolean).
protected  void enableEvents sample code for java.awt.Component.enableEvents(long) definition code for java.awt.Component.enableEvents(long) (long eventsToEnable)
          Enables the events defined by the specified event mask parameter to be delivered to this component.
 void enableInputMethods sample code for java.awt.Component.enableInputMethods(boolean) definition code for java.awt.Component.enableInputMethods(boolean) (boolean enable)
          Enables or disables input method support for this component.
protected  void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, boolean, boolean) definition code for java.awt.Component.firePropertyChange(java.lang.String, boolean, boolean) (String sample code for java.lang.String definition code for java.lang.String  propertyName, boolean oldValue, boolean newValue)
          Support for reporting bound property changes for boolean properties.
 void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, byte, byte) definition code for java.awt.Component.firePropertyChange(java.lang.String, byte, byte) (String sample code for java.lang.String definition code for java.lang.String  propertyName, byte oldValue, byte newValue)
          Reports a bound property change.
 void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, char, char) definition code for java.awt.Component.firePropertyChange(java.lang.String, char, char) (String sample code for java.lang.String definition code for java.lang.String  propertyName, char oldValue, char newValue)
          Reports a bound property change.
 void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, double, double) definition code for java.awt.Component.firePropertyChange(java.lang.String, double, double) (String sample code for java.lang.String definition code for java.lang.String  propertyName, double oldValue, double newValue)
          Reports a bound property change.
 void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, float, float) definition code for java.awt.Component.firePropertyChange(java.lang.String, float, float) (String sample code for java.lang.String definition code for java.lang.String  propertyName, float oldValue, float newValue)
          Reports a bound property change.
protected  void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, int, int) definition code for java.awt.Component.firePropertyChange(java.lang.String, int, int) (String sample code for java.lang.String definition code for java.lang.String  propertyName, int oldValue, int newValue)
          Support for reporting bound property changes for integer properties.
 void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, long, long) definition code for java.awt.Component.firePropertyChange(java.lang.String, long, long) (String sample code for java.lang.String definition code for java.lang.String  propertyName, long oldValue, long newValue)
          Reports a bound property change.
protected  void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object) definition code for java.awt.Component.firePropertyChange(java.lang.String, java.lang.Object, java.lang.Object) (String sample code for java.lang.String definition code for java.lang.String  propertyName, Object sample code for java.lang.Object definition code for java.lang.Object  oldValue, Object sample code for java.lang.Object definition code for java.lang.Object  newValue)
          Support for reporting bound property changes for Object properties.
 void firePropertyChange sample code for java.awt.Component.firePropertyChange(java.lang.String, short, short) definition code for java.awt.Component.firePropertyChange(java.lang.String, short, short) (String sample code for java.lang.String definition code for java.lang.String  propertyName, short oldValue, short newValue)
          Reports a bound property change.
 AccessibleContext sample code for javax.accessibility.AccessibleContext definition code for javax.accessibility.AccessibleContext getAccessibleContext sample code for java.awt.Component.getAccessibleContext() definition code for java.awt.Component.getAccessibleContext() ()
          Gets the AccessibleContext associated with this Component.
 float getAlignmentX sample code for java.awt.Component.getAlignmentX() definition code for java.awt.Component.getAlignmentX() ()
          Returns the alignment along the x axis.
 float getAlignmentY sample code for java.awt.Component.getAlignmentY() definition code for java.awt.Component.getAlignmentY() ()
          Returns the alignment along the y axis.
 Color sample code for java.awt.Color definition code for java.awt.Color getBackground sample code for java.awt.Component.getBackground() definition code for java.awt.Component.getBackground() ()
          Gets the background color of this component.
 Rectangle sample code for java.awt.Rectangle definition code for java.awt.Rectangle getBounds sample code for java.awt.Component.getBounds() definition code for java.awt.Component.getBounds() ()
          Gets the bounds of this component in the form of a Rectangle object.
 Rectangle sample code for java.awt.Rectangle definition code for java.awt.Rectangle getBounds sample code for java.awt.Component.getBounds(java.awt.Rectangle) definition code for java.awt.Component.getBounds(java.awt.Rectangle) (Rectangle sample code for java.awt.Rectangle definition code for java.awt.Rectangle  rv)
          Stores the bounds of this component into "return value" rv and return rv.
 ColorModel sample code for java.awt.image.ColorModel definition code for java.awt.image.ColorModel getColorModel sample code for java.awt.Component.getColorModel() definition code for java.awt.Component.getColorModel() ()
          Gets the instance of ColorModel used to display the component on the output device.
 Component sample code for java.awt.Component definition code for java.awt.Component getComponentAt sample code for java.awt.Component.getComponentAt(int, int) definition code for java.awt.Component.getComponentAt(int, int) (int x, int y)
          Determines if this component or one of its immediate subcomponents contains the (xy) location, and if so, returns the containing component.
 Component sample code for java.awt.Component definition code for java.awt.Component getComponentAt sample code for java.awt.Component.getComponentAt(java.awt.Point) definition code for java.awt.Component.getComponentAt(java.awt.Point) (Point sample code for java.awt.Point definition code for java.awt.Point  p)
          Returns the component or subcomponent that contains the specified point.
 ComponentListener sample code for java.awt.event.ComponentListener definition code for java.awt.event.ComponentListener [] getComponentListeners sample code for java.awt.Component.getComponentListeners() definition code for java.awt.Component.getComponentListeners() ()
          Returns an array of all the component listeners registered on this component.
 ComponentOrientation sample code for java.awt.ComponentOrientation definition code for java.awt.ComponentOrientation getComponentOrientation sample code for java.awt.Component.getComponentOrientation() definition code for java.awt.Component.getComponentOrientation() ()
          Retrieves the language-sensitive orientation that is to be used to order the elements or text within this component.
 Cursor sample code for java.awt.Cursor definition code for java.awt.Cursor getCursor sample code for java.awt.Component.getCursor() definition code for java.awt.Component.getCursor() ()
          Gets the cursor set in the component.
 DropTarget sample code for java.awt.dnd.DropTarget definition code for java.awt.dnd.DropTarget getDropTarget sample code for java.awt.Component.getDropTarget() definition code for java.awt.Component.getDropTarget() ()
          Gets the DropTarget associated with this Component.
 Container sample code for java.awt.Container definition code for java.awt.Container getFocusCycleRootAncestor