javax.swing
Class JComponent

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable
Direct Known Subclasses:
AbstractButton, BasicInternalFrameTitlePane, Box, Box.Filler, JColorChooser, JComboBox, JFileChooser, JInternalFrame, JInternalFrame.JDesktopIcon, JLabel, JLayeredPane, JList, JMenuBar, JOptionPane, JPanel, JPopupMenu, JProgressBar, JRootPane, JScrollBar, JScrollPane, JSeparator, JSlider, JSpinner, JSplitPane, JTabbedPane, JTable, JTableHeader, JTextComponent, JToolBar, JToolTip, JTree, JViewport

public abstract class JComponent
extends Container
implements Serializable

The base class of all Swing components. It contains generic methods to manage events, properties and sizes. Actual drawing of the component is channeled to a look-and-feel class that is implemented elsewhere.

See Also:
Serialized Form

Nested Class Summary
 class JComponent.AccessibleJComponent
          Basic accessibility support for JComponent derived widgets.
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  AccessibleContext accessibleContext
          The accessible context of this JComponent.
protected  EventListenerList listenerList
          Listeners for events other than PropertyChangeEvent are handled by this listener list.
static String TOOL_TIP_TEXT_KEY
           
protected  ComponentUI ui
          The user interface delegate for this component.
static int UNDEFINED_CONDITION
          Constant used to indicate that no condition has been assigned to a particular action.
static int WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
          Constant used to indicate that an action should be performed only when the component is an ancestor of the component which has focus.
static int WHEN_FOCUSED
          Constant used to indicate that an action should be performed only when the component has focus.
static int WHEN_IN_FOCUSED_WINDOW
          Constant used to indicate that an action should be performed only when the component is in the window which has focus.
 
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
JComponent()
          Creates a new JComponent instance.
 
Method Summary
 void addAncestorListener(AncestorListener listener)
          Register an AncestorListener.
 void addNotify()
          Receives notification if this component is added to a parent component.
 void addVetoableChangeListener(VetoableChangeListener listener)
          Register a VetoableChangeListener.
 void computeVisibleRect(Rectangle rect)
          Compute the component's visible rectangle, which is defined recursively as either the component's bounds, if it has no parent, or the intersection of the component's bounds with the visible rectangle of its parent.
 boolean contains(int x, int y)
          Returns true if the coordinates (x, y) lie within the bounds of this component and false otherwise.
 JToolTip createToolTip()
          Return the toolTip property of this component, creating it and setting it if it is currently null.
 void disable()
          Deprecated. replaced by setEnabled(boolean)
 void enable()
          Deprecated. replaced by setEnabled(boolean)
 void firePropertyChange(String property, boolean oldValue, boolean newValue)
          Fires a property change for a primitive boolean property.
 void firePropertyChange(String property, int oldValue, int newValue)
          Fires a property change for a primitive integer property.
protected  void fireVetoableChange(String propertyName, Object oldValue, Object newValue)
          Call VetoableChangeListener.vetoableChange(java.beans.PropertyChangeEvent) on all listeners registered to listen to a given property.
 AccessibleContext getAccessibleContext()
          Get the value of the accessibleContext property for this component.
 ActionListener getActionForKeyStroke(KeyStroke ks)
          Get the ActionListener (typically an Action object) which is associated with a particular keystroke.
 ActionMap getActionMap()
           
 float getAlignmentX()
          Get the value of the alignmentX property.
 float getAlignmentY()
          Get the value of the alignmentY property.
 AncestorListener[] getAncestorListeners()
          Return all registered AncestorListener objects.
 boolean getAutoscrolls()
          Get the current value of the autoscrolls property.
 Border getBorder()
          Get the value of the border property.
 Rectangle getBounds(Rectangle rv)
          Get the component's current bounding box.
 Object getClientProperty(Object key)
          Get a client property associated with this component and a particular key.
protected  Graphics getComponentGraphics(Graphics g)
          Prepares a graphics context for painting this object.
 JPopupMenu getComponentPopupMenu()
          Returns the popup menu for this component.
 int getConditionForKeyStroke(KeyStroke ks)
          Return the condition that determines whether a registered action occurs in response to the specified keystroke.
 int getDebugGraphicsOptions()
          Get the value of the debugGraphicsOptions property.
static Locale getDefaultLocale()
          Returns the locale used as the default for all new components.
 Graphics getGraphics()
          Returns the Graphics context for this component.
 int getHeight()
          Returns the height of this component.
 boolean getInheritsPopupMenu()
          Returns the flag that controls whether or not the component inherits its parent's popup menu when no popup menu is specified for this component.
 InputMap getInputMap()
          Returns the input map associated with this component for the WHEN_FOCUSED state.
 InputMap getInputMap(int condition)
          Returns the input map associated with this component for the given state/condition.
 InputVerifier getInputVerifier()
          Returns the currently set input verifier for this component.
 Insets getInsets()
          Get the component's insets, which are calculated from the border property.
 Insets getInsets(Insets insets)
          Get the component's insets, which are calculated from the border property.
<T extends EventListener>
T[]
getListeners(Class<T> listenerType)
          Returns all registered EventListeners of the given listenerType.
 Point getLocation(Point rv)
          Get the component's location.
 Dimension getMaximumSize()
          Get the component's maximum size.
 Dimension getMinimumSize()
          Get the component's minimum size.
 Component getNextFocusableComponent()
          Deprecated. See FocusTraversalPolicy
 Dimension getPreferredSize()
          Get the component's preferred size.
 KeyStroke[] getRegisteredKeyStrokes()
          Return the set of KeyStroke objects which are registered to initiate actions on this component.
 JRootPane getRootPane()
          Returns the first ancestor of this component which is a JRootPane.
 Dimension getSize(Dimension rv)
          Get the component's size.
 Point getToolTipLocation(MouseEvent event)
          Return the location at which the toolTipText property should be displayed, when triggered by a particular mouse event.
 String getToolTipText()
          Returns the current tooltip text for this component, or null if none has been set.
 String getToolTipText(MouseEvent event)
          Returns the tooltip text for this component for a particular mouse event.
 Container getTopLevelAncestor()
          Return the top level ancestral container (usually a Window or Applet) which this component is contained within, or null if no ancestors exist.
 TransferHandler getTransferHandler()
          Get the value of the transferHandler property.
 String getUIClassID()
          Get the value of the UIClassID property.
 boolean getVerifyInputWhenFocusTarget()
           
 VetoableChangeListener[] getVetoableChangeListeners()
          Return all registered VetoableChangeListener objects.
 Rectangle getVisibleRect()
          Return the component's visible rectangle in a new Rectangle, rather than via a return slot.
 int getWidth()
          Returns the width of this component.
 int getX()
          Returns the X coordinate of the upper left corner of this component.
 int getY()
          Returns the Y coordinate of the upper left corner of this component.
 void grabFocus()
          Requests that this component receive input focus, giving window focus to the top level ancestor of this component.
 boolean isDoubleBuffered()
          Get the value of the doubleBuffered property.
static boolean isLightweightComponent(Component c)
          Return true if the provided component has no native peer; in other words, if it is a "lightweight component".
 boolean isManagingFocus()
          Deprecated. 1.4 Use Component.setFocusTraversalKeys(int, Set) and Container.setFocusCycleRoot(boolean) instead
 boolean isOpaque()
          Return the current value of the opaque property.
 boolean isOptimizedDrawingEnabled()
          Return true if the component can guarantee that none of its children will overlap in Z-order.
 boolean isPaintingTile()
          Return true if this component is currently painting a tile, this means that paint() is called again on another child component.
 boolean isRequestFocusEnabled()
          Get the value of the requestFocusEnabled property.
 boolean isValidateRoot()
          Return true if this component is a validation root; this will cause calls to Container.invalidate() in this component's children to be "captured" at this component, and not propagate to its parents.
 void paint(Graphics g)
          Paint the component.
protected  void paintBorder(Graphics g)
          Paint the component's border.
protected  void paintChildren(Graphics g)
          Paint the component's children.
protected  void paintComponent(Graphics g)
          Paint the component's body.
 void paintImmediately(int x, int y, int w, int h)
          A variant of paintImmediately(Rectangle) which takes integer parameters.
 void paintImmediately(Rectangle r)
          Transform the provided dirty rectangle for this component into the appropriate ancestral JRootPane and call paint(java.awt.Graphics) on that root pane.
protected  String paramString()
          Return a string representation for this component, for use in debugging.
 void print(Graphics g)
          Prints this component to the given Graphics context.
 void printAll(Graphics g)
          Prints this component to the given Graphics context.
protected  void printBorder(Graphics g)
          Print this component's border to the specified Graphics context.
protected  void printChildren(Graphics g)
          Print this component's children to the specified Graphics context.
protected  void printComponent(Graphics g)
          Prints this component to the specified Graphics context.
protected  void processComponentKeyEvent(KeyEvent e)
          A hook for subclasses which want to customize event processing.
protected  boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed)
           
protected  void processKeyEvent(KeyEvent e)
          Override the default key dispatch system from Component to hook into the swing InputMap / ActionMap system.
protected  void processMouseMotionEvent(MouseEvent ev)
          Processes mouse motion event, like dragging and moving.
 void putClientProperty(Object key, Object value)
          Add a client property value to this component, associated with key.
 void registerKeyboardAction(ActionListener act, KeyStroke stroke, int cond)
          A variant of registerKeyboardAction(ActionListener,String,KeyStroke,int) which provides null for the command name.
 void registerKeyboardAction(ActionListener act, String cmd, KeyStroke stroke, int cond)
          An obsolete method to register a keyboard action on this component.
 void removeAncestorListener(AncestorListener listener)
          Unregister an AncestorListener.
 void removeNotify()
          Receives notification that this component no longer has a parent.
 void removeVetoableChangeListener(VetoableChangeListener listener)
          Unregister a VetoableChangeChangeListener.
 void repaint(long tm, int x, int y, int width, int height)
          Mark the described region of this component as dirty in the current RepaintManager.
 void repaint(Rectangle r)
          Mark the described region of this component as dirty in the current RepaintManager.
 boolean requestDefaultFocus()
          Deprecated. Use requestFocus() on the default component provided from the FocusTraversalPolicy instead.
 void requestFocus()
          Requests that this component gets the input focus if the requestFocusEnabled property is set to true.
 boolean requestFocus(boolean temporary)
          This method is overridden to make it public so that it can be used by look and feel implementations.
 boolean requestFocusInWindow()
          Requests that this component gets the input focus if the top level window that contains this component has the focus and the requestFocusEnabled property is set to true.
protected  boolean requestFocusInWindow(boolean temporary)
          This method is overridden to make it public so that it can be used by look and feel implementations.
 void resetKeyboardActions()
          Reset all keyboard action registries.
 void reshape(int x, int y, int w, int h)
          Moves and resizes the component.
 void revalidate()
          Queue a an invalidation and revalidation of this component, using RepaintManager.addInvalidComponent(javax.swing.JComponent).
 void scrollRectToVisible(Rectangle r)
          Calls scrollRectToVisible on the component's parent.
 void setActionMap(ActionMap map)
           
 void setAlignmentX(float a)
          Set the value of the alignmentX property.
 void setAlignmentY(float a)
          Set the value of the alignmentY property.
 void setAutoscrolls(boolean a)
          Set the value of the autoscrolls property.
 void setBackground(Color bg)
          Set the value of the background property.
 void setBorder(Border newBorder)
          Set the value of the border property.
 void setComponentPopupMenu(JPopupMenu popup)
          Sets the popup menu for this component (this is a bound property with the property name 'componentPopupMenu').
 void setDebugGraphicsOptions(int debugOptions)
          Set the value of the debugGraphicsOptions property.
static void setDefaultLocale(Locale l)
          Sets the locale to be used as the default for all new components.
 void setDoubleBuffered(boolean db)
          Set the value of the doubleBuffered property.
 void setEnabled(boolean enable)
          Set the value of the enabled property.
 void setFont(Font f)
          Set the value of the font property.
 void setForeground(Color fg)
          Set the value of the foreground property.
 void setInheritsPopupMenu(boolean inherit)
          Sets the flag that controls whether or not the component inherits its parent's popup menu when no popup menu is specified for this component.
 void setInputMap(int condition, InputMap map)
          Sets the input map for the given condition.
 void setInputVerifier(InputVerifier verifier)
          Sets the input verifier to use by this component.
 void setNextFocusableComponent(Component aComponent)
          Deprecated. Use FocusTraversalPolicy instead
 void setOpaque(boolean isOpaque)
          Set if the component should paint all pixels withing its bounds.
 void setRequestFocusEnabled(boolean e)
          Set the value of the requestFocusEnabled property.
 void setToolTipText(String text)
          Set the tooltip text for this component.
 void setTransferHandler(TransferHandler newHandler)
          Set the value of the transferHandler property.
protected  void setUI(ComponentUI newUI)
          Install a new UI delegate as the component's ui property.
 void setVerifyInputWhenFocusTarget(boolean verifyInputWhenFocusTarget)
           
 void setVisible(boolean v)
          Set the value of the visible property.
 void unregisterKeyboardAction(KeyStroke aKeyStroke)
          Remove a keyboard action registry.
 void update(Graphics g)
          Call paint(java.awt.Graphics).
 void updateUI()
          This method should be overridden in subclasses.
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

accessibleContext

protected AccessibleContext accessibleContext
The accessible context of this JComponent.


ui

protected ComponentUI ui
The user interface delegate for this component. Event delivery and repainting of the component are usually delegated to this object.

See Also:
setUI(javax.swing.plaf.ComponentUI), getUIClassID(), updateUI()

listenerList

protected EventListenerList listenerList
Listeners for events other than PropertyChangeEvent are handled by this listener list. PropertyChangeEvents are handled in Component.changeSupport.


TOOL_TIP_TEXT_KEY

public static final String TOOL_TIP_TEXT_KEY
See Also:
Constant Field Values

UNDEFINED_CONDITION

public static final int UNDEFINED_CONDITION
Constant used to indicate that no condition has been assigned to a particular action.

See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), Constant Field Values

WHEN_FOCUSED

public static final int WHEN_FOCUSED
Constant used to indicate that an action should be performed only when the component has focus.

See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), Constant Field Values

WHEN_ANCESTOR_OF_FOCUSED_COMPONENT

public static final int WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
Constant used to indicate that an action should be performed only when the component is an ancestor of the component which has focus.

See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), Constant Field Values

WHEN_IN_FOCUSED_WINDOW

public static final int WHEN_IN_FOCUSED_WINDOW
Constant used to indicate that an action should be performed only when the component is in the window which has focus.

See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), Constant Field Values
Constructor Detail

JComponent

public JComponent()
Creates a new JComponent instance.

Method Detail

getClientProperty

public final Object getClientProperty(Object key)
Get a client property associated with this component and a particular key.

Parameters:
key - The key with which to look up the client property
Returns:
A client property associated with this object and key
See Also:
clientProperties, getClientProperties(), putClientProperty(java.lang.Object, java.lang.Object)

putClientProperty

public final void putClientProperty(Object key,
                                    Object value)
Add a client property value to this component, associated with key. If there is an existing client property associated with key, it will be replaced. A PropertyChangeEvent is sent to registered listeners (with the name of the property being key.toString()).

Parameters:
key - The key of the client property association to add
value - The value of the client property association to add
See Also:
clientProperties, getClientProperties(), getClientProperty(java.lang.Object)

removeAncestorListener

public void removeAncestorListener(AncestorListener listener)
Unregister an AncestorListener.

Parameters:
listener - The listener to unregister
See Also:
addAncestorListener(javax.swing.event.AncestorListener)

removeVetoableChangeListener

public void removeVetoableChangeListener(VetoableChangeListener listener)
Unregister a VetoableChangeChangeListener.

Parameters:
listener - The listener to unregister
See Also:
addVetoableChangeListener(java.beans.VetoableChangeListener)

addAncestorListener

public void addAncestorListener(AncestorListener listener)
Register an AncestorListener.

Parameters:
listener - The listener to register
See Also:
removeVetoableChangeListener(java.beans.VetoableChangeListener)

addVetoableChangeListener

public void addVetoableChangeListener(VetoableChangeListener listener)
Register a VetoableChangeListener.

Parameters:
listener - The listener to register
See Also:
removeVetoableChangeListener(java.beans.VetoableChangeListener), listenerList

getListeners

public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Returns all registered EventListeners of the given listenerType.

Overrides:
getListeners in class Container
Parameters:
listenerType - the class of listeners to filter (null not permitted).
Returns:
An array of registered listeners.
Throws:
ClassCastException - if listenerType does not implement the EventListener interface.
NullPointerException - if listenerType is null.
Since:
1.3
See Also:
getAncestorListeners(), listenerList

getAncestorListeners

public AncestorListener[] getAncestorListeners()
Return all registered AncestorListener objects.

Returns:
The set of AncestorListener objects in listenerList

getVetoableChangeListeners

public VetoableChangeListener[] getVetoableChangeListeners()
Return all registered VetoableChangeListener objects.

Returns:
An array of the VetoableChangeListener objects registered with this component (possibly empty but never null).
Since:
1.4

fireVetoableChange

protected void fireVetoableChange(String propertyName,
                                  Object oldValue,
                                  Object newValue)
                           throws PropertyVetoException
Call VetoableChangeListener.vetoableChange(java.beans.PropertyChangeEvent) on all listeners registered to listen to a given property. Any method which changes the specified property of this component should call this method.

Parameters:
propertyName - The property which changed
oldValue - The old value of the property
newValue - The new value of the property
Throws:
PropertyVetoException - if the change was vetoed by a listener
See Also:
addVetoableChangeListener(java.beans.VetoableChangeListener), removeVetoableChangeListener(java.beans.VetoableChangeListener)

firePropertyChange

public void firePropertyChange(String property,
                               int oldValue,
                               int newValue)
Fires a property change for a primitive integer property.

Overrides:
firePropertyChange in class Component
Parameters:
property - the name of the property
oldValue - the old value of the property
newValue - the new value of the property

firePropertyChange

public void firePropertyChange(String property,
                               boolean oldValue,
                               boolean newValue)
Fires a property change for a primitive boolean property.

Overrides:
firePropertyChange in class Component
Parameters:
property - the name of the property
oldValue - the old value of the property
newValue - the new value of the property

getAccessibleContext

public AccessibleContext getAccessibleContext()
Get the value of the accessibleContext property for this component.

Overrides:
getAccessibleContext in class Component
Returns:
the current value of the property

getAlignmentX

public float getAlignmentX()
Get the value of the alignmentX property.

Overrides:
getAlignmentX in class Container
Returns:
The current value of the property.
See Also:
setAlignmentX(float), alignmentY

getAlignmentY

public float getAlignmentY()
Get the value of the alignmentY property.

Overrides:
getAlignmentY in class Container
Returns:
The current value of the property.
See Also:
setAlignmentY(float), alignmentX

getAutoscrolls

public boolean getAutoscrolls()
Get the current value of the autoscrolls property.

Returns:
The current value of the property

setBorder

public void setBorder(Border newBorder)
Set the value of the border property.

Parameters:
newBorder - The new value of the property
See Also:
getBorder()

getBorder

public Border getBorder()
Get the value of the border property.

Returns:
The property's current value
See Also:
setBorder(javax.swing.border.Border)

getBounds

public Rectangle getBounds(Rectangle rv)
Get the component's current bounding box. If a rectangle is provided, use this as the return value (adjusting its fields in place); otherwise (of null is provided) return a new Rectangle.

Overrides:
getBounds in class Component
Parameters:
rv - Optional return value to use
Returns:
A rectangle bounding the component

getComponentGraphics

protected Graphics getComponentGraphics(Graphics g)
Prepares a graphics context for painting this object. If debugGraphicsOptions is not equal to DebugGraphics.NONE_OPTION, produce a new DebugGraphics object wrapping the parameter. Otherwise configure the parameter with this component's foreground color and font.

Parameters:
g - The graphics context to wrap or configure
Returns:
A graphics context to paint this object with
See Also:
debugGraphicsOptions, paint(java.awt.Graphics)

getDebugGraphicsOptions

public int getDebugGraphicsOptions()
Get the value of the debugGraphicsOptions property.

Returns:
The current value of the property.
See Also:
setDebugGraphicsOptions(int), debugGraphicsOptions

getInsets

public Insets getInsets()
Get the component's insets, which are calculated from the border property. If the border is null, calls Container.getInsets().

Overrides:
getInsets in class Container
Returns:
The component's current insets

getInsets

public Insets getInsets(Insets insets)
Get the component's insets, which are calculated from the border property. If the border is null, calls Container.getInsets(). The passed-in Insets value will be used as the return value, if possible.

Parameters:
insets - Return value object to reuse, if possible
Returns:
The component's current insets

getLocation

public Point getLocation(Point rv)
Get the component's location. The passed-in Point value will be used as the return value, if possible.

Overrides:
getLocation in class Component
Parameters:
rv - Return value object to reuse, if possible
Returns:
The component's current location

getMaximumSize

public Dimension getMaximumSize()
Get the component's maximum size. If the maximumSize property has been explicitly set, it is returned. If the maximumSize property has not been set but the ui property has been, the result of ComponentUI.getMaximumSize(javax.swing.JComponent) is returned. If neither property has been set, the result of Container.getMaximumSize() is returned.

Overrides:
getMaximumSize in class Container
Returns:
the maximum size of the component
See Also:
Component.setMaximumSize(java.awt.Dimension), Component.getMaximumSize(), Component.isMaximumSizeSet(), ComponentUI.getMaximumSize(JComponent)

getMinimumSize

public Dimension getMinimumSize()
Get the component's minimum size. If the minimumSize property has been explicitly set, it is returned. If the minimumSize property has not been set but the ui property has been, the result of ComponentUI.getMinimumSize(javax.swing.JComponent) is returned. If neither property has been set, the result of Container.getMinimumSize() is returned.

Overrides:
getMinimumSize in class Container
Returns:
The minimum size of the component
See Also:
Component.setMinimumSize(java.awt.Dimension), Component.getMinimumSize(), Component.isMinimumSizeSet(), ComponentUI.getMinimumSize(JComponent)

getPreferredSize

public Dimension getPreferredSize()
Get the component's preferred size. If the preferredSize property has been explicitly set, it is returned. If the preferredSize property has not been set but the ui property has been, the result of ComponentUI.getPreferredSize(javax.swing.JComponent) is returned. If neither property has been set, the result of Container.getPreferredSize() is returned.

Overrides:
getPreferredSize in class Container
Returns:
The preferred size of the component
See Also:
Component.setPreferredSize(java.awt.Dimension), Component.getPreferredSize(), Component.isPreferredSizeSet(), ComponentUI.getPreferredSize(JComponent)

getNextFocusableComponent

public Component getNextFocusableComponent()
Deprecated. See FocusTraversalPolicy

Return the value of the nextFocusableComponent property.

Returns:
The current value of the property, or null if none has been set.

getRegisteredKeyStrokes

public KeyStroke[] getRegisteredKeyStrokes()
Return the set of KeyStroke objects which are registered to initiate actions on this component.

Returns:
An array of the registered keystrokes (possibly empty but never null).

getRootPane

public JRootPane getRootPane()
Returns the first ancestor of this component which is a JRootPane. Equivalent to calling SwingUtilities.getRootPane(this);.

Returns:
An ancestral JRootPane, or null if none exists.

getSize

public Dimension getSize(Dimension rv)
Get the component's size. The passed-in Dimension value will be used as the return value, if possible.

Overrides:
getSize in class Component
Parameters:
rv - Return value object to reuse, if possible
Returns:
The component's current size

createToolTip

public JToolTip createToolTip()
Return the toolTip property of this component, creating it and setting it if it is currently null. This method can be overridden in subclasses which wish to control the exact form of tooltip created.

Returns:
The current toolTip

getToolTipLocation

public Point getToolTipLocation(MouseEvent event)
Return the location at which the toolTipText property should be displayed, when triggered by a particular mouse event.

Parameters:
event - The event the tooltip is being presented in response to
Returns:
The point at which to display a tooltip, or null if swing is to choose a default location.

setToolTipText

public void setToolTipText(String text)
Set the tooltip text for this component. If a non-null value is set, this component is registered in the ToolTipManager in order to turn on tooltips for this component. If a null value is set, tooltips are turne off for this component.

Parameters:
text - the tooltip text for this component
See Also:
getToolTipText(), getToolTipText(MouseEvent)

getToolTipText

public String getToolTipText()
Returns the current tooltip text for this component, or null if none has been set.

Returns:
the current tooltip text for this component, or null if none has been set
See Also:
setToolTipText(java.lang.String), getToolTipText(MouseEvent)

getToolTipText

public String getToolTipText(MouseEvent event)
Returns the tooltip text for this component for a particular mouse event. This can be used to support context sensitive tooltips that can change with the mouse location. By default this returns the static tooltip text returned by getToolTipText().

Parameters:
event - the mouse event which triggered the tooltip
Returns:
the tooltip text for this component for a particular mouse event
See Also:
setToolTipText(java.lang.String), getToolTipText()

getInheritsPopupMenu

public boolean getInheritsPopupMenu()
Returns the flag that controls whether or not the component inherits its parent's popup menu when no popup menu is specified for this component.

Returns:
A boolean.
Since:
1.5
See Also:
setInheritsPopupMenu(boolean)

setInheritsPopupMenu

public void setInheritsPopupMenu(boolean inherit)
Sets the flag that controls whether or not the component inherits its parent's popup menu when no popup menu is specified for this component. This is a bound property with the property name 'inheritsPopupMenu'.

Parameters:
inherit - the new flag value.
Since:
1.5
See Also:
getInheritsPopupMenu()

getComponentPopupMenu

public JPopupMenu getComponentPopupMenu()
Returns the popup menu for this component. If the popup menu is null AND the getInheritsPopupMenu() method returns true, this method will return the parent's popup menu (if it has one).

Returns:
The popup menu (possibly null.
Since:
1.5
See Also:
setComponentPopupMenu(JPopupMenu), getInheritsPopupMenu()

setComponentPopupMenu

public void setComponentPopupMenu(JPopupMenu popup)
Sets the popup menu for this component (this is a bound property with the property name 'componentPopupMenu').

Parameters:
popup - the popup menu (null permitted).
Since:
1.5
See Also:
getComponentPopupMenu()

getTopLevelAncestor

public Container getTopLevelAncestor()
Return the top level ancestral container (usually a Window or Applet) which this component is contained within, or null if no ancestors exist.

Returns:
The top level container, if it exists

computeVisibleRect

public void computeVisibleRect(Rectangle rect)
Compute the component's visible rectangle, which is defined recursively as either the component's bounds, if it has no parent, or the intersection of the component's bounds with the visible rectangle of its parent.

Parameters:
rect - The return value slot to place the visible rectangle in

getVisibleRect

public Rectangle getVisibleRect()
Return the component's visible rectangle in a new Rectangle, rather than via a return slot.

Returns:
the component's visible rectangle
See Also:
computeVisibleRect(Rectangle)

grabFocus

public void grabFocus()

Requests that this component receive input focus, giving window focus to the top level ancestor of this component. Only works on displayable, focusable, visible components.

This method should not be called by clients; it is intended for focus implementations. Use Component.AccessibleAWTComponent.requestFocus() instead.

See Also:
Component.AccessibleAWTComponent.requestFocus()

isDoubleBuffered

public boolean isDoubleBuffered()
Get the value of the doubleBuffered property.

Overrides:
isDoubleBuffered in class Component
Returns:
The property's current value

isLightweightComponent

public static boolean isLightweightComponent(Component c)
Return true if the provided component has no native peer; in other words, if it is a "lightweight component".

Parameters:
c - The component to test for lightweight-ness
Returns:
Whether or not the component is lightweight

isManagingFocus

public boolean isManagingFocus()
Deprecated. 1.4 Use Component.setFocusTraversalKeys(int, Set) and Container.setFocusCycleRoot(boolean) instead

Return true if you wish this component to manage its own focus. In particular: if you want this component to be sent TAB and SHIFT+TAB key events, and to not have its children considered as focus transfer targets. If true, focus traversal around this component changes to CTRL+TAB and CTRL+SHIFT+TAB.

Returns:
true if you want this component to manage its own focus, otherwise (by default) false

isOpaque

public boolean isOpaque()
Return the current value of the opaque property.

Overrides:
isOpaque in class Component
Returns:
The current property value
See Also:
Component.isLightweight()

isOptimizedDrawingEnabled

public boolean isOptimizedDrawingEnabled()
Return true if the component can guarantee that none of its children will overlap in Z-order. This is a hint to the painting system. The default is to return true, but some components such as JLayeredPane should override this to return false.

Returns:
Whether the component tiles its children

isPaintingTile

public boolean isPaintingTile()
Return true if this component is currently painting a tile, this means that paint() is called again on another child component. This method returns false if this component does not paint a tile or if the last tile is currently painted.

Returns:
whether the component is painting a tile

isRequestFocusEnabled

public boolean isRequestFocusEnabled()
Get the value of the requestFocusEnabled property.

Returns:
The current value of the property

isValidateRoot

public boolean isValidateRoot()
Return true if this component is a validation root; this will cause calls to Container.invalidate() in this component's children to be "captured" at this component, and not propagate to its parents. For most components this should return false, but some components such as JViewport will want to return true.

Returns:
Whether this component is a validation root

paint

public void paint(Graphics g)

Paint the component. This is a delicate process, and should only be called from the repaint thread, under control of the RepaintManager. Client code should usually call Component.repaint() to trigger painting.

The body of the paint call involves calling paintComponent(java.awt.Graphics), paintBorder(java.awt.Graphics), and paintChildren(java.awt.Graphics) in order. If you want to customize painting behavior, you should override one of these methods rather than paint.

For more details on the painting sequence, see this article.

Overrides:
paint in class Container
Parameters:
g - The graphics context to paint with
See Also:
paintImmediately(Rectangle)

paintBorder

protected void paintBorder(Graphics g)
Paint the component's border. This usually means calling Border.paintBorder(java.awt.Component, java.awt.Graphics, int, int, int, int) on the border property, if it is non-null. You may override this if you wish to customize border painting behavior. The border is painted after the component's body, but before the component's children.

Parameters:
g - The graphics context with which to paint the border
See Also:
paint(java.awt.Graphics), paintChildren(java.awt.Graphics), paintComponent(java.awt.Graphics)

paintChildren

protected void paintChildren(Graphics g)
Paint the component's children. This usually means calling Container.paint(java.awt.Graphics), which recursively calls paint(java.awt.Graphics) on any of the component's children, with appropriate changes to coordinate space and clipping region. You may override this if you wish to customize children painting behavior. The children are painted after the component's body and border.

Parameters:
g - The graphics context with which to paint the children
See Also:
paint(java.awt.Graphics), paintBorder(java.awt.Graphics), paintComponent(java.awt.Graphics)

paintComponent

protected void paintComponent(Graphics g)
Paint the component's body. This usually means calling ComponentUI.update(java.awt.Graphics, javax.swing.JComponent) on the ui property of the component, if it is non-null. You may override this if you wish to customize the component's body-painting behavior. The component's body is painted first, before the border and children.

Parameters:
g - The graphics context with which to paint the body
See Also:
paint(java.awt.Graphics), paintBorder(java.awt.Graphics), paintChildren(java.awt.Graphics)

paintImmediately

public void paintImmediately(int x,
                             int y,
                             int w,
                             int h)
A variant of paintImmediately(Rectangle) which takes integer parameters.

Parameters:
x - The left x coordinate of the dirty region
y - The top y coordinate of the dirty region
w - The width of the dirty region
h - The height of the dirty region

paintImmediately

public void paintImmediately(Rectangle r)
Transform the provided dirty rectangle for this component into the appropriate ancestral JRootPane and call paint(java.awt.Graphics) on that root pane. This method is called from the RepaintManager and should always be called within the painting thread.

This method will acquire a double buffer from the RepaintManager if the component's doubleBuffered property is true and the paint call is the first recursive paint call inside swing.

The method will also modify the provided Graphics context via the getComponentGraphics(java.awt.Graphics) method. If you want to customize the graphics object used for painting, you should override that method rather than paint.

Parameters:
r - The dirty rectangle to paint

paramString

protected String paramString()
Return a string representation for this component, for use in debugging.

Overrides:
paramString in class Container
Returns:
A string describing this component.

registerKeyboardAction

public void registerKeyboardAction(ActionListener act,
                                   KeyStroke stroke,
                                   int cond)
A variant of registerKeyboardAction(ActionListener,String,KeyStroke,int) which provides null for the command name.

Parameters:
act - the action listener to notify when the keystroke occurs.
stroke - the key stroke.
cond - the condition (one of WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW and WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).

registerKeyboardAction

public void registerKeyboardAction(ActionListener act,
                                   String cmd,
                                   KeyStroke stroke,
                                   int cond)
An obsolete method to register a keyboard action on this component. You should use getInputMap and getActionMap to fetch mapping tables from keystrokes to commands, and commands to actions, respectively, and modify those mappings directly.

Parameters:
act - The action to be registered
cmd - The command to deliver in the delivered ActionEvent
stroke - The keystroke to register on
cond - One of the values UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, or WHEN_IN_FOCUSED_WINDOW, indicating the condition which must be met for the action to be fired
See Also:
unregisterKeyboardAction(javax.swing.KeyStroke), getConditionForKeyStroke(javax.swing.KeyStroke), resetKeyboardActions()

setInputMap

public final void setInputMap(int condition,
                              InputMap map)
Sets the input map for the given condition.

Parameters:
condition - the condition (one of WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW and WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).
map - the map.
Throws:
IllegalArgumentException - if condition is not one of the specified values.

getInputMap

public final InputMap getInputMap(int condition)
Returns the input map associated with this component for the given state/condition.

Parameters:
condition - the state (one of WHEN_FOCUSED, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT and WHEN_IN_FOCUSED_WINDOW).
Returns:
The input map.
Throws:
IllegalArgumentException - if condition is not one of the specified values.
Since:
1.3

getInputMap

public final InputMap getInputMap()
Returns the input map associated with this component for the WHEN_FOCUSED state.

Returns:
The input map.
Since:
1.3
See Also:
getInputMap(int)

getActionMap

public final ActionMap getActionMap()

setActionMap

public final void setActionMap(ActionMap map)

getConditionForKeyStroke

public int getConditionForKeyStroke(KeyStroke ks)
Return the condition that determines whether a registered action occurs in response to the specified keystroke. As of 1.3 KeyStrokes can be registered with multiple simultaneous conditions.

Parameters:
ks - The keystroke to return the condition of
Returns:
One of the values UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, or WHEN_IN_FOCUSED_WINDOW
See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), unregisterKeyboardAction(javax.swing.KeyStroke), resetKeyboardActions()

getActionForKeyStroke

public ActionListener getActionForKeyStroke(KeyStroke ks)
Get the ActionListener (typically an Action object) which is associated with a particular keystroke.

Parameters:
ks - The keystroke to retrieve the action of
Returns:
The action associated with the specified keystroke

processComponentKeyEvent

protected void processComponentKeyEvent(KeyEvent e)
A hook for subclasses which want to customize event processing.


processKeyEvent

protected void processKeyEvent(KeyEvent e)
Override the default key dispatch system from Component to hook into the swing InputMap / ActionMap system. See this report for more details, it's somewhat complex.

Overrides:
processKeyEvent in class Component
Parameters:
e - the KeyEvent to process
See Also:
KeyListener, Component.addKeyListener(KeyListener), Component.enableEvents(long)

processKeyBinding

protected boolean processKeyBinding(KeyStroke ks,
                                    KeyEvent e,
                                    int condition,
                                    boolean pressed)

unregisterKeyboardAction

public void unregisterKeyboardAction(KeyStroke aKeyStroke)
Remove a keyboard action registry.

Parameters:
aKeyStroke - The keystroke to unregister
See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), getConditionForKeyStroke(javax.swing.KeyStroke), resetKeyboardActions()

resetKeyboardActions

public void resetKeyboardActions()
Reset all keyboard action registries.

See Also:
registerKeyboardAction(ActionListener, KeyStroke, int), unregisterKeyboardAction(javax.swing.KeyStroke), getConditionForKeyStroke(javax.swing.KeyStroke)

repaint

public void repaint(long tm,
                    int x,
                    int y,
                    int width,
                    int height)
Mark the described region of this component as dirty in the current RepaintManager. This will queue an asynchronous repaint using the system painting thread in the near future.

Overrides:
repaint in class Component
Parameters:
tm - ignored
x - coordinate of the region to mark as dirty
y - coordinate of the region to mark as dirty
width - dimension of the region to mark as dirty
height - dimension of the region to mark as dirty
See Also:
Component.update(Graphics)

repaint

public void repaint(Rectangle r)
Mark the described region of this component as dirty in the current RepaintManager. This will queue an asynchronous repaint using the system painting thread in the near future.

Parameters:
r - The rectangle to mark as dirty

requestDefaultFocus

public boolean requestDefaultFocus()
Deprecated. Use requestFocus() on the default component provided from the FocusTraversalPolicy instead.

Request focus on the default component of this component's FocusTraversalPolicy.

Returns:
The result of requestFocus()

revalidate

public void revalidate()
Queue a an invalidation and revalidation of this component, using RepaintManager.addInvalidComponent(javax.swing.JComponent).


scrollRectToVisible

public void scrollRectToVisible(Rectangle r)
Calls scrollRectToVisible on the component's parent. Components which can service this call should override.

Parameters:
r - The rectangle to make visible

setAlignmentX

public void setAlignmentX(float a)
Set the value of the alignmentX property.

Parameters:
a - The new value of the property

setAlignmentY

public void setAlignmentY(float a)
Set the value of the alignmentY property.

Parameters:
a - The new value of the property

setAutoscrolls

public void setAutoscrolls(boolean a)
Set the value of the autoscrolls property.

Parameters:
a - The new value of the property

setDebugGraphicsOptions

public void setDebugGraphicsOptions(int debugOptions)
Set the value of the debugGraphicsOptions property.

Parameters:
debugOptions - The new value of the property

setDoubleBuffered

public void setDoubleBuffered(boolean db)
Set the value of the doubleBuffered property.

Parameters:
db - The new value of the property

setEnabled

public void setEnabled(boolean enable)
Set the value of the enabled property.

Overrides:
setEnabled in class Component
Parameters:
enable - The new value of the property
See Also:
Component.isEnabled(), Component.isLightweight()

setFont

public void setFont(Font f)
Set the value of the font property.

Overrides:
setFont in class Container
Parameters:
f - The new value of the property
See Also:
Component.getFont()

setBackground

public void setBackground(Color bg)
Set the value of the background property.

Overrides:
setBackground in class Component
Parameters:
bg - The new value of the property
See Also:
Component.getBackground()

setForeground

public void setForeground(Color fg)
Set the value of the foreground property.

Overrides:
setForeground in class Component
Parameters:
fg - The new value of the property
See Also:
Component.getForeground()

setNextFocusableComponent

public void setNextFocusableComponent(Component aComponent)
Deprecated. Use FocusTraversalPolicy instead

Set the specified component to be the next component in the focus cycle, overriding the FocusTraversalPolicy for this component.

Parameters:
aComponent - The component to set as the next focusable

setRequestFocusEnabled

public void setRequestFocusEnabled(boolean e)
Set the value of the requestFocusEnabled property.

Parameters:
e - The new value of the property

getTransferHandler

public TransferHandler getTransferHandler()
Get the value of the transferHandler property.

Returns:
The current value of the property
See Also:
setTransferHandler(javax.swing.TransferHandler)

setTransferHandler

public void setTransferHandler(TransferHandler newHandler)
Set the value of the transferHandler property.

Parameters:
newHandler - The new value of the property
See Also:
getTransferHandler()

setOpaque

public void setOpaque(boolean isOpaque)
Set if the component should paint all pixels withing its bounds. If this property is set to false, the component expects the cleared background.

Parameters:
isOpaque - if true, paint all pixels. If false, expect the clean background.
See Also:
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)

setVisible

public void setVisible(boolean v)
Set the value of the visible property. If the value is changed, then the AncestorListeners of this component and all its children (recursivly) are notified.

Overrides:
setVisible in class Component
Parameters:
v - The new value of the property
See Also:
Component.isVisible()

update

public void update(Graphics g)
Call paint(java.awt.Graphics).

Overrides:
update in class Container
Parameters:
g - The graphics context to paint into
See Also:
Component.paint(Graphics), Component.repaint()

getUIClassID

public String getUIClassID()
Get the value of the UIClassID property. This property should be a key in the UIDefaults table managed by UIManager, the value of which is the name of a class to load for the component's ui property.

Returns:
A "symbolic" name which will map to a class to use for the component's UI, such as "ComponentUI"
See Also:
setUI(javax.swing.plaf.ComponentUI), updateUI()

setUI

protected void setUI(ComponentUI newUI)
Install a new UI delegate as the component's ui property. In the process, this will call ComponentUI.uninstallUI(javax.swing.JComponent) on any existing value for the ui property, and ComponentUI.installUI(javax.swing.JComponent) on the new UI delegate.

Parameters:
newUI - The new UI delegate to install
See Also:
updateUI(), getUIClassID()

updateUI

public void updateUI()
This method should be overridden in subclasses. In JComponent, the method does nothing. In subclasses, it should a UI delegate (corresponding to the symbolic name returned from getUIClassID()) from the UIManager, and calls setUI(javax.swing.plaf.ComponentUI) with the new delegate.


getDefaultLocale

public static Locale getDefaultLocale()
Returns the locale used as the default for all new components. The default value is Locale.getDefault() (that is, the platform default locale).

Returns:
The locale (never null).
See Also:
setDefaultLocale(Locale)

setDefaultLocale

public static void setDefaultLocale(Locale l)
Sets the locale to be used as the default for all new components. If this is set to null, the getDefaultLocale() method will return the platform default locale.

Parameters:
l - the locale (null permitted).

getInputVerifier

public InputVerifier getInputVerifier()
Returns the currently set input verifier for this component.

Returns:
the input verifier, or null if none

setInputVerifier

public void setInputVerifier(InputVerifier verifier)
Sets the input verifier to use by this component.

Parameters:
verifier - the input verifier, or null

getVerifyInputWhenFocusTarget

public boolean getVerifyInputWhenFocusTarget()
Since:
1.3

setVerifyInputWhenFocusTarget

public void setVerifyInputWhenFocusTarget(boolean verifyInputWhenFocusTarget)
Since:
1.3

requestFocus

public void requestFocus()
Requests that this component gets the input focus if the requestFocusEnabled property is set to true. This also means that this component's top-level window becomes the focused window, if that is not already the case. The preconditions that have to be met to become a focus owner is that the component must be displayable, visible and focusable. Note that this signals only a request for becoming focused. There are situations in which it is not possible to get the focus. So developers should not assume that the component has the focus until it receives a FocusEvent with a value of FocusEvent.FOCUS_GAINED.

Overrides:
requestFocus in class Component
See Also:
Component.AccessibleAWTComponent.requestFocus()

requestFocus

public boolean requestFocus(boolean temporary)
This method is overridden to make it public so that it can be used by look and feel implementations. You should not use this method directly. Instead you are strongly encouraged to call requestFocus() or requestFocusInWindow() instead.

Overrides:
requestFocus in class Component
Parameters:
temporary - if the focus change is temporary
Returns:
false if the focus change request will definitly fail, true if it will likely succeed
Since:
1.4
See Also:
Component.requestFocus(boolean)

requestFocusInWindow

public boolean requestFocusInWindow()
Requests that this component gets the input focus if the top level window that contains this component has the focus and the requestFocusEnabled property is set to true. The preconditions that have to be met to become a focus owner is that the component must be displayable, visible and focusable. Note that this signals only a request for becoming focused. There are situations in which it is not possible to get the focus. So developers should not assume that the component has the focus until it receives a FocusEvent with a value of FocusEvent.FOCUS_GAINED.

Overrides:
requestFocusInWindow in class Component
Returns:
false if the focus change request will definitly fail, true if it will likely succeed
See Also:
Component.requestFocusInWindow()

requestFocusInWindow

protected boolean requestFocusInWindow(boolean temporary)
This method is overridden to make it public so that it can be used by look and feel implementations. You should not use this method directly. Instead you are strongly encouraged to call requestFocus() or requestFocusInWindow() instead.

Overrides:
requestFocusInWindow in class Component
Parameters:
temporary - if the focus change is temporary
Returns:
false if the focus change request will definitly fail, true if it will likely succeed
Since:
1.4
See Also:
Component.requestFocus(boolean)

addNotify

public void addNotify()
Receives notification if this component is added to a parent component. Notification is sent to all registered AncestorListeners about the new parent. This method sets up ActionListeners for all registered KeyStrokes of this component in the chain of parent components. A PropertyChange event is fired to indicate that the ancestor property has changed. This method is used internally and should not be used in applications.

Overrides:
addNotify in class Container
See Also:
Component.isDisplayable(), Component.removeNotify()

removeNotify

public void removeNotify()
Receives notification that this component no longer has a parent. This method sends an AncestorEvent to all registered AncestorListeners, notifying them that the parent is gone. The keybord actions of this component are removed from the parent and its ancestors. A PropertyChangeEvent is fired to indicate that the 'ancestor' property has changed. This method is called before the component is actually removed from its parent, so the parent is still visible through Component.getParent().

Overrides:
removeNotify in class Container
See Also:
Component.isDisplayable(), Component.addNotify()

contains

public boolean contains(int x,
                        int y)
Returns true if the coordinates (x, y) lie within the bounds of this component and false otherwise. x and y are relative to the coordinate space of the component.

Overrides:
contains in class Component
Parameters:
x - the X coordinate of the point to check
y - the Y coordinate of the point to check
Returns:
true if the specified point lies within the bounds of this component, false otherwise
See Also:
Component.getComponentAt(int, int)

disable

public void disable()
Deprecated. replaced by setEnabled(boolean)

Disables this component.

Overrides:
disable in class Component

enable

public void enable()
Deprecated. replaced by setEnabled(boolean)

Enables this component.

Overrides:
enable in class Component

getGraphics

public Graphics getGraphics()
Returns the Graphics context for this component. This can be used to draw on a component.

Overrides:
getGraphics in class Component
Returns:
the Graphics context for this component
See Also:
Component.paint(Graphics)

getX

public int getX()
Returns the X coordinate of the upper left corner of this component. Prefer this method over getBounds(java.awt.Rectangle) or getLocation(java.awt.Point) because it does not cause any heap allocation.

Overrides:
getX in class Component
Returns:
the X coordinate of the upper left corner of the component

getY

public int getY()
Returns the Y coordinate of the upper left corner of this component. Prefer this method over getBounds(java.awt.Rectangle) or getLocation(java.awt.Point) because it does not cause any heap allocation.

Overrides:
getY in class Component
Returns:
the Y coordinate of the upper left corner of the component

getHeight

public int getHeight()
Returns the height of this component. Prefer this method over getBounds(java.awt.Rectangle) or getSize(java.awt.Dimension) because it does not cause any heap allocation.

Overrides:
getHeight in class Component
Returns:
the height of the component

getWidth

public int getWidth()
Returns the width of this component. Prefer this method over getBounds(java.awt.Rectangle) or getSize(java.awt.Dimension) because it does not cause any heap allocation.

Overrides:
getWidth in class Component
Returns:
the width of the component

print

public void print(Graphics g)
Prints this component to the given Graphics context. A call to this method results in calls to the methods printComponent(java.awt.Graphics), printBorder(java.awt.Graphics) and printChildren(java.awt.Graphics) in this order. Double buffering is temporarily turned off so the painting goes directly to the supplied Graphics context.

Overrides:
print in class Container
Parameters:
g - the Graphics context to print onto
See Also:
Component.paint(Graphics)

printAll

public void printAll(Graphics g)
Prints this component to the given Graphics context. This invokes print(java.awt.Graphics).

Overrides:
printAll in class Component
Parameters:
g - the Graphics context to print onto
See Also:
Component.paintAll(Graphics)

printComponent

protected void printComponent(Graphics g)
Prints this component to the specified Graphics context. The default behaviour is to invoke paintComponent(java.awt.Graphics). Override this if you want special behaviour for printing.

Parameters:
g - the Graphics context to print onto
Since:
1.3

printChildren

protected void printChildren(Graphics g)
Print this component's children to the specified Graphics context. The default behaviour is to invoke paintChildren(java.awt.Graphics). Override this if you want special behaviour for printing.

Parameters:
g - the Graphics context to print onto
Since:
1.3

printBorder

protected void printBorder(Graphics g)
Print this component's border to the specified Graphics context. The default behaviour is to invoke paintBorder(java.awt.Graphics). Override this if you want special behaviour for printing.

Parameters:
g - the Graphics context to print onto
Since:
1.3

processMouseMotionEvent

protected void processMouseMotionEvent(MouseEvent ev)
Processes mouse motion event, like dragging and moving.

Overrides:
processMouseMotionEvent in class Component
Parameters:
ev - the MouseEvent describing the mouse motion
See Also:
MouseMotionListener, Component.addMouseMotionListener(MouseMotionListener), Component.enableEvents(long)

reshape

public void reshape(int x,
                    int y,
                    int w,
                    int h)
Moves and resizes the component.

Overrides:
reshape in class Component
Parameters:
x - the new horizontal location
y - the new vertial location
w - the new width
h - the new height