ImageObserver
, MenuContainer
, Serializable
Button
, Canvas
, Checkbox
, Choice
, Container
, Label
, List
, Scrollbar
, TextComponent
public abstract class Component extends Object implements ImageObserver, MenuContainer, Serializable
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 window. On the contrary, a heavyweight component is associated with a native window. The isLightweight()
method may be used to distinguish between the two kinds of the components.
Lightweight and heavyweight components may be mixed in a single component hierarchy. However, for correct operating of such a mixed hierarchy of components, the whole hierarchy must be valid. When the hierarchy gets invalidated, like after changing the bounds of components, or adding/removing components to/from containers, the whole hierarchy must be validated afterwards by means of the Container.validate()
method invoked on the top-most invalid container of the hierarchy.
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 implements java.io.Serializable { BigObjectThatShouldNotBeSerializedWithAButton bigOne; Button aButton = new Button(); static 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 utilized 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.
Modifier and Type | Class | Description |
---|---|---|
protected class |
Component.AccessibleAWTComponent |
Inner class of Component used to provide default support for accessibility. |
static enum |
Component.BaselineResizeBehavior |
Enumeration of the common ways the baseline of a component can change as the size changes. |
protected class |
Component.BltBufferStrategy |
Inner class for blitting offscreen surfaces to a component. |
protected class |
Component.FlipBufferStrategy |
Inner class for flipping buffers on a component. |
Modifier and Type | Field | Description |
---|---|---|
protected AccessibleContext |
accessibleContext |
The AccessibleContext associated with this Component . |
static final float |
BOTTOM_ALIGNMENT |
Ease-of-use constant for getAlignmentY . |
static final float |
CENTER_ALIGNMENT |
Ease-of-use constant for getAlignmentY and getAlignmentX . |
static final float |
LEFT_ALIGNMENT |
Ease-of-use constant for getAlignmentX . |
static final float |
RIGHT_ALIGNMENT |
Ease-of-use constant for getAlignmentX . |
static final float |
TOP_ALIGNMENT |
Ease-of-use constant for getAlignmentY() . |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Modifier | Constructor | Description |
---|---|---|
protected |
Constructs a new component. |
Modifier and Type | Method | Description |
---|---|---|
boolean |
action |
Deprecated. As of JDK version 1.1, should register this component as ActionListener on component which fires action events. |
void |
add |
Adds the specified popup menu to the component. |
void |
addComponentListener |
Adds the specified component listener to receive component events from this component. |
void |
addFocusListener |
Adds the specified focus listener to receive focus events from this component when this component gains input focus. |
void |
addHierarchyBoundsListener |
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 |
Adds the specified hierarchy listener to receive hierarchy changed events from this component when the hierarchy to which this container belongs changes. |
void |
addInputMethodListener |
Adds the specified input method listener to receive input method events from this component. |
void |
addKeyListener |
Adds the specified key listener to receive key events from this component. |
void |
addMouseListener |
Adds the specified mouse listener to receive mouse events from this component. |
void |
addMouseMotionListener |
Adds the specified mouse motion listener to receive mouse motion events from this component. |
void |
addMouseWheelListener |
Adds the specified mouse wheel listener to receive mouse wheel events from this component. |
void |
addNotify() |
Makes this Component displayable by connecting it to a native screen resource. |
void |
addPropertyChangeListener |
Adds a PropertyChangeListener to the listener list. |
void |
addPropertyChangeListener |
Adds a PropertyChangeListener to the listener list for a specific property. |
void |
applyComponentOrientation |
Sets the ComponentOrientation property of this component and all components contained within it. |
boolean |
areFocusTraversalKeysSet |
Returns whether the Set of focus traversal keys for the given focus traversal operation has been explicitly defined for this Component. |
Rectangle |
bounds() |
Deprecated. As of JDK version 1.1, replaced by getBounds() . |
int |
checkImage |
Returns the status of the construction of a screen representation of the specified image. |
int |
checkImage |
Returns the status of the construction of a screen representation of the specified image. |
protected AWTEvent |
coalesceEvents |
Potentially coalesce an event being posted with an existing event. |
boolean |
contains |
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 |
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 |
createImage |
Creates an off-screen drawable image to be used for double buffering. |
Image |
createImage |
Creates an image from the specified image producer. |
VolatileImage |
createVolatileImage |
Creates a volatile off-screen drawable image to be used for double buffering. |
VolatileImage |
createVolatileImage |
Creates a volatile off-screen drawable image, with the given capabilities. |
void |
deliverEvent |
Deprecated. As of JDK version 1.1, replaced by dispatchEvent(AWTEvent e) . |
void |
disable() |
Deprecated. As of JDK version 1.1, replaced by setEnabled(boolean) . |
protected final void |
disableEvents |
Disables the events defined by the specified event mask parameter from being delivered to this component. |
final void |
dispatchEvent |
Dispatches an event to this component or one of its sub components. |
void |
doLayout() |
Prompts the layout manager to lay out this component. |
void |
enable() |
Deprecated. As of JDK version 1.1, replaced by setEnabled(boolean) . |
void |
enable |
Deprecated. As of JDK version 1.1, replaced by setEnabled(boolean) . |
protected final void |
enableEvents |
Enables the events defined by the specified event mask parameter to be delivered to this component. |
void |
enableInputMethods |
Enables or disables input method support for this component. |
protected void |
firePropertyChange |
Support for reporting bound property changes for boolean properties. |
void |
firePropertyChange |
Reports a bound property change. |
void |
firePropertyChange |
Reports a bound property change. |
void |
firePropertyChange |
Reports a bound property change. |
void |
firePropertyChange |
Reports a bound property change. |
protected void |
firePropertyChange |
Support for reporting bound property changes for integer properties. |
void |
firePropertyChange |
Reports a bound property change. |
void |
firePropertyChange |
Reports a bound property change. |
protected void |
firePropertyChange |
Support for reporting bound property changes for Object properties. |
AccessibleContext |
getAccessibleContext() |
Gets the AccessibleContext associated with this Component . |
float |
getAlignmentX() |
Returns the alignment along the x axis. |
float |
getAlignmentY() |
Returns the alignment along the y axis. |
Color |
getBackground() |
Gets the background color of this component. |
int |
getBaseline |
Returns the baseline. |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior() |
Returns an enum indicating how the baseline of the component changes as the size changes. |
Rectangle |
getBounds() |
Gets the bounds of this component in the form of a Rectangle object. |
Rectangle |
getBounds |
Stores the bounds of this component into "return value" rv and return rv. |
ColorModel |
getColorModel() |
Gets the instance of ColorModel used to display the component on the output device. |
Component |
getComponentAt |
Determines if this component or one of its immediate subcomponents contains the (x, y) location, and if so, returns the containing component. |
Component |
getComponentAt |
Returns the component or subcomponent that contains the specified point. |
ComponentListener[] |
getComponentListeners() |
Returns an array of all the component listeners registered on this component. |
ComponentOrientation |
getComponentOrientation() |
Retrieves the language-sensitive orientation that is to be used to order the elements or text within this component. |
Cursor |
getCursor() |
Gets the cursor set in the component. |
DropTarget |
getDropTarget() |
Gets the DropTarget associated with this Component . |
Container |
getFocusCycleRootAncestor() |
Returns the Container which is the focus cycle root of this Component's focus traversal cycle. |
FocusListener[] |
getFocusListeners() |
Returns an array of all the focus listeners registered on this component. |
Set |
getFocusTraversalKeys |
Returns the Set of focus traversal keys for a given traversal operation for this Component. |
boolean |
getFocusTraversalKeysEnabled() |
Returns whether focus traversal keys are enabled for this Component. |
Font |
getFont() |
Gets the font of this component. |
FontMetrics |
getFontMetrics |
Gets the font metrics for the specified font. |
Color |
getForeground() |
Gets the foreground color of this component. |
Graphics |
getGraphics() |
Creates a graphics context for this component. |
GraphicsConfiguration |
getGraphicsConfiguration() |
Gets the GraphicsConfiguration associated with this Component . |
int |
getHeight() |
Returns the current height of this component. |
HierarchyBoundsListener[] |
getHierarchyBoundsListeners() |
Returns an array of all the hierarchy bounds listeners registered on this component. |
HierarchyListener[] |
getHierarchyListeners() |
Returns an array of all the hierarchy listeners registered on this component. |
boolean |
getIgnoreRepaint() |
Returns whether or not paint messages received from the operating system should be ignored. |
InputContext |
getInputContext() |
Gets the input context used by this component for handling the communication with input methods when text is entered in this component. |
InputMethodListener[] |
getInputMethodListeners() |
Returns an array of all the input method listeners registered on this component. |
InputMethodRequests |
getInputMethodRequests() |
Gets the input method request handler which supports requests from input methods for this component. |
KeyListener[] |
getKeyListeners() |
Returns an array of all the key listeners registered on this component. |
<T extends EventListener> |
getListeners |
Returns an array of all the objects currently registered as FooListener s upon this Component . |
Locale |
getLocale() |
Gets the locale of this component. |
Point |
getLocation() |
Gets the location of this component in the form of a point specifying the component's top-left corner. |
Point |
getLocation |
Stores the x,y origin of this component into "return value" rv and return rv. |
Point |
getLocationOnScreen() |
Gets the location of this component in the form of a point specifying the component's top-left corner in the screen's coordinate space. |
Dimension |
getMaximumSize() |
Gets the maximum size of this component. |
Dimension |
getMinimumSize() |
Gets the minimum size of this component. |
MouseListener[] |
getMouseListeners() |
Returns an array of all the mouse listeners registered on this component. |
MouseMotionListener[] |
getMouseMotionListeners() |
Returns an array of all the mouse motion listeners registered on this component. |
Point |
getMousePosition() |
Returns the position of the mouse pointer in this Component 's coordinate space if the Component is directly under the mouse pointer, otherwise returns null . |
MouseWheelListener[] |
getMouseWheelListeners() |
Returns an array of all the mouse wheel listeners registered on this component. |
String |
getName() |
Gets the name of the component. |
Container |
getParent() |
Gets the parent of this component. |
Dimension |
getPreferredSize() |
Gets the preferred size of this component. |
PropertyChangeListener[] |
getPropertyChangeListeners() |
Returns an array of all the property change listeners registered on this component. |
PropertyChangeListener[] |
getPropertyChangeListeners |
Returns an array of all the listeners which have been associated with the named property. |
Dimension |
getSize() |
Returns the size of this component in the form of a Dimension object. |
Dimension |
getSize |
Stores the width/height of this component into "return value" rv and return rv. |
Toolkit |
getToolkit() |
Gets the toolkit of this component. |
final Object |
getTreeLock() |
Gets this component's locking object (the object that owns the thread synchronization monitor) for AWT component-tree and layout operations. |
int |
getWidth() |
Returns the current width of this component. |
int |
getX() |
Returns the current x coordinate of the components origin. |
int |
getY() |
Returns the current y coordinate of the components origin. |
boolean |
gotFocus |
Deprecated. As of JDK version 1.1, replaced by processFocusEvent(FocusEvent). |
boolean |
handleEvent |
Deprecated. As of JDK version 1.1 replaced by processEvent(AWTEvent). |
boolean |
hasFocus() |
Returns true if this Component is the focus owner. |
void |
hide() |
Deprecated. As of JDK version 1.1, replaced by setVisible(boolean) . |
boolean |
imageUpdate |
Repaints the component when the image has changed. |
boolean |
inside |
Deprecated. As of JDK version 1.1, replaced by contains(int, int). |
void |
invalidate() |
Invalidates this component and its ancestors. |
boolean |
isBackgroundSet() |
Returns whether the background color has been explicitly set for this Component. |
boolean |
isCursorSet() |
Returns whether the cursor has been explicitly set for this Component. |
boolean |
isDisplayable() |
Determines whether this component is displayable. |
boolean |
isDoubleBuffered() |
Returns true if this component is painted to an offscreen image ("buffer") that's copied to the screen later. |
boolean |
isEnabled() |
Determines whether this component is enabled. |
boolean |
isFocusable() |
Returns whether this Component can be focused. |
boolean |
isFocusCycleRoot |
Returns whether the specified Container is the focus cycle root of this Component's focus traversal cycle. |
boolean |
isFocusOwner() |
Returns true if this Component is the focus owner. |
boolean |
isFocusTraversable() |
Deprecated. As of 1.4, replaced by isFocusable() . |
boolean |
isFontSet() |
Returns whether the font has been explicitly set for this Component. |
boolean |
isForegroundSet() |
Returns whether the foreground color has been explicitly set for this Component. |
boolean |
isLightweight() |
A lightweight component doesn't have a native toolkit peer. |
boolean |
isMaximumSizeSet() |
Returns true if the maximum size has been set to a non- null value otherwise returns false. |
boolean |
isMinimumSizeSet() |
Returns whether or not setMinimumSize has been invoked with a non-null value. |
boolean |
isOpaque() |
Returns true if this component is completely opaque, returns false by default. |
boolean |
isPreferredSizeSet() |
Returns true if the preferred size has been set to a non- null value otherwise returns false. |
boolean |
isShowing() |
Determines whether this component is showing on screen. |
boolean |
isValid() |
Determines whether this component is valid. |
boolean |
isVisible() |
Determines whether this component should be visible when its parent is visible. |
boolean |
keyDown |
Deprecated. As of JDK version 1.1, replaced by processKeyEvent(KeyEvent). |
boolean |
keyUp |
Deprecated. As of JDK version 1.1, replaced by processKeyEvent(KeyEvent). |
void |
layout() |
Deprecated. As of JDK version 1.1, replaced by doLayout() . |
void |
list() |
Prints a listing of this component to the standard system output stream System.out . |
void |
list |
Prints a listing of this component to the specified output stream. |
void |
list |
Prints out a list, starting at the specified indentation, to the specified print stream. |
void |
list |
Prints a listing to the specified print writer. |
void |
list |
Prints out a list, starting at the specified indentation, to the specified print writer. |
Component |
locate |
Deprecated. As of JDK version 1.1, replaced by getComponentAt(int, int). |
Point |
location() |
Deprecated. As of JDK version 1.1, replaced by getLocation() . |
boolean |
lostFocus |
Deprecated. As of JDK version 1.1, replaced by processFocusEvent(FocusEvent). |
Dimension |
minimumSize() |
Deprecated. As of JDK version 1.1, replaced by getMinimumSize() . |
boolean |
mouseDown |
Deprecated. As of JDK version 1.1, replaced by processMouseEvent(MouseEvent). |
boolean |
mouseDrag |
Deprecated. As of JDK version 1.1, replaced by processMouseMotionEvent(MouseEvent). |
boolean |
mouseEnter |
Deprecated. As of JDK version 1.1, replaced by processMouseEvent(MouseEvent). |
boolean |
mouseExit |
Deprecated. As of JDK version 1.1, replaced by processMouseEvent(MouseEvent). |
boolean |
mouseMove |
Deprecated. As of JDK version 1.1, replaced by processMouseMotionEvent(MouseEvent). |
boolean |
mouseUp |
Deprecated. As of JDK version 1.1, replaced by processMouseEvent(MouseEvent). |
void |
move |
Deprecated. As of JDK version 1.1, replaced by setLocation(int, int) . |
void |
nextFocus() |
Deprecated. As of JDK version 1.1, replaced by transferFocus(). |
void |
paint |
Paints this component. |
void |
paintAll |
Paints this component and all of its subcomponents. |
protected String |
paramString() |
Returns a string representing the state of this component. |
boolean |
postEvent |
Deprecated. As of JDK version 1.1, replaced by dispatchEvent(AWTEvent). |
Dimension |
preferredSize() |
Deprecated. As of JDK version 1.1, replaced by getPreferredSize() . |
boolean |
prepareImage |
Prepares an image for rendering on this component at the specified width and height. |
boolean |
prepareImage |
Prepares an image for rendering on this component. |
void |
print |
Prints this component. |
void |
printAll |
Prints this component and all of its subcomponents. |
protected void |
processComponentEvent |
Processes component events occurring on this component by dispatching them to any registered ComponentListener objects. |
protected void |
processEvent |
Processes events occurring on this component. |
protected void |
processFocusEvent |
Processes focus events occurring on this component by dispatching them to any registered FocusListener objects. |
protected void |
processHierarchyBoundsEvent |
Processes hierarchy bounds events occurring on this component by dispatching them to any registered HierarchyBoundsListener objects. |
protected void |
processHierarchyEvent |
Processes hierarchy events occurring on this component by dispatching them to any registered HierarchyListener objects. |
protected void |
processInputMethodEvent |
Processes input method events occurring on this component by dispatching them to any registered InputMethodListener objects. |
protected void |
processKeyEvent |
Processes key events occurring on this component by dispatching them to any registered KeyListener objects. |
protected void |
processMouseEvent |
Processes mouse events occurring on this component by dispatching them to any registered MouseListener objects. |
protected void |
processMouseMotionEvent |
Processes mouse motion events occurring on this component by dispatching them to any registered MouseMotionListener objects. |
protected void |
processMouseWheelEvent |
Processes mouse wheel events occurring on this component by dispatching them to any registered MouseWheelListener objects. |
void |
remove |
Removes the specified popup menu from the component. |
void |
removeComponentListener |
Removes the specified component listener so that it no longer receives component events from this component. |
void |
removeFocusListener |
Removes the specified focus listener so that it no longer receives focus events from this component. |
void |
removeHierarchyBoundsListener |
Removes the specified hierarchy bounds listener so that it no longer receives hierarchy bounds events from this component. |
void |
removeHierarchyListener |
Removes the specified hierarchy listener so that it no longer receives hierarchy changed events from this component. |
void |
removeInputMethodListener |
Removes the specified input method listener so that it no longer receives input method events from this component. |
void |
removeKeyListener |
Removes the specified key listener so that it no longer receives key events from this component. |
void |
removeMouseListener |
Removes the specified mouse listener so that it no longer receives mouse events from this component. |
void |
removeMouseMotionListener |
Removes the specified mouse motion listener so that it no longer receives mouse motion events from this component. |
void |
removeMouseWheelListener |
Removes the specified mouse wheel listener so that it no longer receives mouse wheel events from this component. |
void |
removeNotify() |
Makes this Component undisplayable by destroying it native screen resource. |
void |
removePropertyChangeListener |
Removes a PropertyChangeListener from the listener list. |
void |
removePropertyChangeListener |
Removes a PropertyChangeListener from the listener list for a specific property. |
void |
repaint() |
Repaints this component. |
void |
repaint |
Repaints the specified rectangle of this component. |
void |
repaint |
Repaints the component. |
void |
repaint |
Repaints the specified rectangle of this component within tm milliseconds. |
void |
requestFocus() |
Requests that this Component get the input focus, and that this Component's top-level ancestor become the focused Window. |
protected boolean |
requestFocus |
Requests that this Component get the input focus, and that this Component 's top-level ancestor become the focused Window . |
protected boolean |
requestFocus |
Requests by the reason of cause that this Component get the input focus, and that this Component 's top-level ancestor become the focused Window . |
void |
requestFocus |
Requests by the reason of cause that this Component get the input focus, and that this Component's top-level ancestor become the focused Window. |
boolean |
requestFocusInWindow() |
Requests that this Component get the input focus, if this Component's top-level ancestor is already the focused Window. |
protected boolean |
requestFocusInWindow |
Requests that this Component get the input focus, if this Component 's top-level ancestor is already the focused Window . |
boolean |
requestFocusInWindow |
Requests by the reason of cause that this Component get the input focus, if this Component's top-level ancestor is already the focused Window. |
void |
reshape |
Deprecated. As of JDK version 1.1, replaced by setBounds(int, int, int, int) . |
void |
resize |
Deprecated. As of JDK version 1.1, replaced by setSize(int, int) . |
void |
resize |
Deprecated. As of JDK version 1.1, replaced by setSize(Dimension) . |
void |
revalidate() |
Revalidates the component hierarchy up to the nearest validate root. |
void |
setBackground |
Sets the background color of this component. |
void |
setBounds |
Moves and resizes this component. |
void |
setBounds |
Moves and resizes this component to conform to the new bounding rectangle r . |
void |
setComponentOrientation |
Sets the language-sensitive orientation that is to be used to order the elements or text within this component. |
void |
setCursor |
Sets the cursor image to the specified cursor. |
void |
setDropTarget |
Associate a DropTarget with this component. |
void |
setEnabled |
Enables or disables this component, depending on the value of the parameter b . |
void |
setFocusable |
Sets the focusable state of this Component to the specified value. |
void |
setFocusTraversalKeys |
Sets the focus traversal keys for a given traversal operation for this Component. |
void |
setFocusTraversalKeysEnabled |
Sets whether focus traversal keys are enabled for this Component. |
void |
setFont |
Sets the font of this component. |
void |
setForeground |
Sets the foreground color of this component. |
void |
setIgnoreRepaint |
Sets whether or not paint messages received from the operating system should be ignored. |
void |
setLocale |
Sets the locale of this component. |
void |
setLocation |
Moves this component to a new location. |
void |
setLocation |
Moves this component to a new location. |
void |
setMaximumSize |
Sets the maximum size of this component to a constant value. |
void |
setMinimumSize |
Sets the minimum size of this component to a constant value. |
void |
setMixingCutoutShape |
Sets a 'mixing-cutout' shape for this lightweight component. |
void |
setName |
Sets the name of the component to the specified string. |
void |
setPreferredSize |
Sets the preferred size of this component to a constant value. |
void |
setSize |
Resizes this component so that it has width width and height height . |
void |
setSize |
Resizes this component so that it has width d.width and height d.height . |
void |
setVisible |
Shows or hides this component depending on the value of parameter b . |
void |
show() |
Deprecated. As of JDK version 1.1, replaced by setVisible(boolean) . |
void |
show |
Deprecated. As of JDK version 1.1, replaced by setVisible(boolean) . |
Dimension |
size() |
Deprecated. As of JDK version 1.1, replaced by getSize() . |
String |
toString() |
Returns a string representation of this component and its values. |
void |
transferFocus() |
Transfers the focus to the next component, as though this Component were the focus owner. |
void |
transferFocusBackward() |
Transfers the focus to the previous component, as though this Component were the focus owner. |
void |
transferFocusUpCycle() |
Transfers the focus up one focus traversal cycle. |
void |
update |
Updates this component. |
void |
validate() |
Validates this component. |
public static final float TOP_ALIGNMENT
getAlignmentY()
. Specifies an alignment to the top of the component.public static final float CENTER_ALIGNMENT
getAlignmentY
and getAlignmentX
. Specifies an alignment to the center of the componentpublic static final float BOTTOM_ALIGNMENT
getAlignmentY
. Specifies an alignment to the bottom of the component.public static final float LEFT_ALIGNMENT
getAlignmentX
. Specifies an alignment to the left side of the component.public static final float RIGHT_ALIGNMENT
getAlignmentX
. Specifies an alignment to the right side of the component.protected AccessibleContext accessibleContext
AccessibleContext
associated with this Component
.protected Component()
Component
can be extended directly to create a lightweight component that does not utilize an opaque native window. A lightweight component must be hosted by a native container somewhere higher up in the component tree (for example, by a Frame
object).public String getName()
public void setName(String name)
name
- the string that is to be this component's namepublic Container getParent()
public void setDropTarget(DropTarget dt)
DropTarget
with this component. The Component
will receive drops only if it is enabled.dt
- The DropTargetpublic DropTarget getDropTarget()
DropTarget
associated with this Component
.public GraphicsConfiguration getGraphicsConfiguration()
GraphicsConfiguration
associated with this Component
. If the Component
has not been assigned a specific GraphicsConfiguration
, the GraphicsConfiguration
of the Component
object's top-level container is returned. If the Component
has been created, but not yet added to a Container
, this method returns null
.GraphicsConfiguration
used by this Component
or null
public final Object getTreeLock()
public Toolkit getToolkit()
public boolean isValid()
true
if the component is valid, false
otherwisepublic boolean isDisplayable()
A component is made displayable either when it is added to a displayable containment hierarchy or when its containment hierarchy is made displayable. A containment hierarchy is made displayable when its ancestor window is either packed or made visible.
A component is made undisplayable either when it is removed from a displayable containment hierarchy or when its containment hierarchy is made undisplayable. A containment hierarchy is made undisplayable when its ancestor window is disposed.
true
if the component is displayable, false
otherwisepublic boolean isVisible()
Frame
objects.true
if the component is visible, false
otherwisepublic Point getMousePosition() throws HeadlessException
Component
's coordinate space if the Component
is directly under the mouse pointer, otherwise returns null
. If the Component
is not showing on the screen, this method returns null
even if the mouse pointer is above the area where the Component
would be displayed. If the Component
is partially or fully obscured by other Component
s or native windows, this method returns a non-null value only if the mouse pointer is located above the unobscured part of the Component
. For Container
s it returns a non-null value if the mouse is above the Container
itself or above any of its descendants. Use Container.getMousePosition(boolean)
if you need to exclude children.
Sometimes the exact mouse coordinates are not important, and the only thing that matters is whether a specific Component
is under the mouse pointer. If the return value of this method is null
, mouse pointer is not directly above the Component
.
Component
, or nullHeadlessException
- if GraphicsEnvironment.isHeadless() returns truepublic boolean isShowing()
Note: sometimes there is no way to detect whether the Component
is actually visible to the user. This can happen when:
ScrollPane
but the Component
is not currently in the scroll pane's view port. Component
is obscured by another Component
or Container
. true
if the component is showing, false
otherwisepublic boolean isEnabled()
setEnabled
method.true
if the component is enabled, false
otherwisepublic void setEnabled(boolean b)
b
. An enabled component can respond to user input and generate events. Components are enabled initially by default. Note: Disabling a lightweight component does not prevent it from receiving MouseEvents.
Note: Disabling a heavyweight container prevents all components in this container from receiving any input events. But disabling a lightweight container affects only this container.
b
- If true
, this component is enabled; otherwise this component is disabled@Deprecated public void enable()
setEnabled(boolean)
.@Deprecated public void enable(boolean b)
setEnabled(boolean)
.b
- true
to enable this component; otherwise false
@Deprecated public void disable()
setEnabled(boolean)
.public boolean isDoubleBuffered()
public void enableInputMethods(boolean enable)
enable
- true to enable, false to disablepublic void setVisible(boolean b)
b
. This method changes layout-related information, and therefore, invalidates the component hierarchy.
b
- if true
, shows this component; otherwise, hides this component@Deprecated public void show()
setVisible(boolean)
.@Deprecated public void show(boolean b)
setVisible(boolean)
.b
- true
to make this component visible; otherwise false
@Deprecated public void hide()
setVisible(boolean)
.public Color getForeground()
public void setForeground(Color c)
c
- the color to become this component's foreground color; if this parameter is null
then this component will inherit the foreground color of its parentpublic boolean isForegroundSet()
false
, this Component is inheriting its foreground color from an ancestor.true
if the foreground color has been explicitly set for this Component; false
otherwise.public Color getBackground()
public void setBackground(Color c)
The background color affects each component differently and the parts of the component that are affected by the background color may differ between operating systems.
c
- the color to become this component's color; if this parameter is null
, then this component will inherit the background color of its parentpublic boolean isBackgroundSet()
false
, this Component is inheriting its background color from an ancestor.true
if the background color has been explicitly set for this Component; false
otherwise.public Font getFont()
getFont
in interface MenuContainer
public void setFont(Font f)
This method changes layout-related information, and therefore, invalidates the component hierarchy.
f
- the font to become this component's font; if this parameter is null
then this component will inherit the font of its parentpublic boolean isFontSet()
false
, this Component is inheriting its font from an ancestor.true
if the font has been explicitly set for this Component; false
otherwise.public Locale getLocale()
IllegalComponentStateException
- if the Component
does not have its own locale and has not yet been added to a containment hierarchy such that the locale can be determined from the containing parentpublic void setLocale(Locale l)
This method changes layout-related information, and therefore, invalidates the component hierarchy.
l
- the locale to become this component's localepublic ColorModel getColorModel()
ColorModel
used to display the component on the output device.public Point getLocation()
Due to the asynchronous nature of native event handling, this method can return outdated values (for instance, after several calls of setLocation()
in rapid succession). For this reason, the recommended method of obtaining a component's position is within java.awt.event.ComponentListener.componentMoved()
, which is called after the operating system has finished moving the component.
Point
representing the top-left corner of the component's bounds in the coordinate space of the component's parentpublic Point getLocationOnScreen()
Point
representing the top-left corner of the component's bounds in the coordinate space of the screenIllegalComponentStateException
- if the component is not showing on the screen@Deprecated public Point location()
getLocation()
.public void setLocation(int x, int y)
x
and y
parameters in the coordinate space of this component's parent. This method changes layout-related information, and therefore, invalidates the component hierarchy.
x
- the x-coordinate of the new location's top-left corner in the parent's coordinate spacey
- the y-coordinate of the new location's top-left corner in the parent's coordinate space@Deprecated public void move(int x, int y)
setLocation(int, int)
.x
- the x-coordinate of the new location's top-left corner in the parent's coordinate spacey
- the y-coordinate of the new location's top-left corner in the parent's coordinate spacepublic void setLocation(Point p)
p
. Point p
is given in the parent's coordinate space. This method changes layout-related information, and therefore, invalidates the component hierarchy.
p
- the point defining the top-left corner of the new location, given in the coordinate space of this component's parentpublic Dimension getSize()
Dimension
object. The height
field of the Dimension
object contains this component's height, and the width
field of the Dimension
object contains this component's width.Dimension
object that indicates the size of this component@Deprecated public Dimension size()
getSize()
.Dimension
object.Dimension
object that indicates the size of this componentpublic void setSize(int width, int height)
width
and height height
. This method changes layout-related information, and therefore, invalidates the component hierarchy.
width
- the new width of this component in pixelsheight
- the new height of this component in pixels@Deprecated public void resize(int width, int height)
setSize(int, int)
.width
- the new width of the componentheight
- the new height of the componentpublic void setSize(Dimension d)
d.width
and height d.height
. This method changes layout-related information, and therefore, invalidates the component hierarchy.
d
- the dimension specifying the new size of this componentNullPointerException
- if d
is null
@Deprecated public void resize(Dimension d)
setSize(Dimension)
.d.width
and height d.height
.d
- the new size of this componentpublic Rectangle getBounds()
Rectangle
object. The bounds specify this component's width, height, and location relative to its parent.@Deprecated public Rectangle bounds()
getBounds()
.public void setBounds(int x, int y, int width, int height)
x
and y
, and the new size is specified by width
and height
. This method changes layout-related information, and therefore, invalidates the component hierarchy.
x
- the new x-coordinate of this componenty
- the new y-coordinate of this componentwidth
- the new width
of this componentheight
- the new height
of this component@Deprecated public void reshape(int x, int y, int width, int height)
setBounds(int, int, int, int)
.x
- the x coordinate of the upper left corner of the rectangley
- the y coordinate of the upper left corner of the rectanglewidth
- the width of the rectangleheight
- the height of the rectanglepublic void setBounds(Rectangle r)
r
. This component's new position is specified by r.x
and r.y
, and its new size is specified by r.width
and r.height
This method changes layout-related information, and therefore, invalidates the component hierarchy.
r
- the new bounding rectangle for this componentNullPointerException
- if r
is null
public int getX()
component.getBounds().x
, or component.getLocation().x
because it doesn't cause any heap allocations.public int getY()
component.getBounds().y
, or component.getLocation().y
because it doesn't cause any heap allocations.public int getWidth()
component.getBounds().width
, or component.getSize().width
because it doesn't cause any heap allocations.public int getHeight()
component.getBounds().height
, or component.getSize().height
because it doesn't cause any heap allocations.public Rectangle getBounds(Rectangle rv)
null
a new Rectangle
is allocated. This version of getBounds
is useful if the caller wants to avoid allocating a new Rectangle
object on the heap.rv
- the return value, modified to the components boundspublic Dimension getSize(Dimension rv)
null
a new Dimension
object is allocated. This version of getSize
is useful if the caller wants to avoid allocating a new Dimension
object on the heap.rv
- the return value, modified to the components sizepublic Point getLocation(Point rv)
null
a new Point
is allocated. This version of getLocation
is useful if the caller wants to avoid allocating a new Point
object on the heap.rv
- the return value, modified to the components locationpublic boolean isOpaque()
An opaque component paints every pixel within its rectangular region. A non-opaque component paints only some of its pixels, allowing the pixels underneath it to "show through". A component that does not fully paint its pixels therefore provides a degree of transparency.
Subclasses that guarantee to always completely paint their contents should override this method and return true.
public boolean isLightweight()
Component
and Container
, other than the ones defined in this package like Button
or Scrollbar
, are lightweight. All of the Swing components are lightweights. This method will always return false
if this component is not displayable because it is impossible to determine the weight of an undisplayable component.
public void setPreferredSize(Dimension preferredSize)
getPreferredSize
will always return this value. Setting the preferred size to null
restores the default behavior.preferredSize
- The new preferred size, or nullpublic boolean isPreferredSizeSet()
null
value otherwise returns false.setPreferredSize
has been invoked with a non-null value.public Dimension getPreferredSize()
@Deprecated public Dimension preferredSize()
getPreferredSize()
.public void setMinimumSize(Dimension minimumSize)
getMinimumSize
will always return this value. Setting the minimum size to null
restores the default behavior.minimumSize
- the new minimum size of this componentpublic boolean isMinimumSizeSet()
setMinimumSize
has been invoked with a non-null value.setMinimumSize
has been invoked with a non-null value.public Dimension getMinimumSize()
@Deprecated public Dimension minimumSize()
getMinimumSize()
.public void setMaximumSize(Dimension maximumSize)
getMaximumSize
will always return this value. Setting the maximum size to null
restores the default behavior.maximumSize
- a Dimension
containing the desired maximum allowable sizepublic boolean isMaximumSizeSet()
null
value otherwise returns false.maximumSize
is non-null
, false otherwisepublic Dimension getMaximumSize()
public float getAlignmentX()
public float getAlignmentY()
public int getBaseline(int width, int height)
LayoutManager
s to align components along their baseline. A return value less than 0 indicates this component does not have a reasonable baseline and that LayoutManager
s should not align this component on its baseline. The default implementation returns -1. Subclasses that support baseline should override appropriately. If a value >= 0 is returned, then the component has a valid baseline for any size >= the minimum size and getBaselineResizeBehavior
can be used to determine how the baseline changes with size.
width
- the width to get the baseline forheight
- the height to get the baseline forIllegalArgumentException
- if width or height is < 0public Component.BaselineResizeBehavior getBaselineResizeBehavior()
The default implementation returns BaselineResizeBehavior.OTHER
. Subclasses that have a baseline should override appropriately. Subclasses should never return null
; if the baseline can not be calculated return BaselineResizeBehavior.OTHER
. Callers should first ask for the baseline using getBaseline
and if a value >= 0 is returned use this method. It is acceptable for this method to return a value other than BaselineResizeBehavior.OTHER
even if getBaseline
returns a value less than 0.
public void doLayout()
@Deprecated public void layout()
doLayout()
.public void validate()
The meaning of the term validating is defined by the ancestors of this class. See Container.validate()
for more details.
public void invalidate()
By default, all the ancestors of the component up to the top-most container of the hierarchy are marked invalid. If the
java.awt.smartInvalidate
system property is set to true
, invalidation stops on the nearest validate root of this component. Marking a container invalid indicates that the container needs to be laid out.
This method is called automatically when any layout-related information changes (e.g. setting the bounds of the component, or adding the component to a container).
This method might be called often, so it should work fast.
public void revalidate()
This method first invalidates the component hierarchy starting from this component up to the nearest validate root. Afterwards, the component hierarchy is validated starting from the nearest validate root.
This is a convenience method supposed to help application developers avoid looking for validate roots manually. Basically, it's equivalent to first calling the invalidate()
method on this component, and then calling the validate()
method on the nearest validate root.
public Graphics getGraphics()
null
if this component is currently not displayable.null
if it has nonepublic FontMetrics getFontMetrics(Font font)
FontRenderContext
and this method does not provide one, it can return only metrics for the default render context which may not match that used when rendering on the Component if Graphics2D
functionality is being used. Instead metrics can be obtained at rendering time by calling Graphics.getFontMetrics()
or text measurement APIs on the Font
class.font
- the font for which font metrics is to be obtainedfont
public void setCursor(Cursor cursor)
contains
method for this component returns true for the current cursor location, and this Component is visible, displayable, and enabled. Setting the cursor of a Container
causes that cursor to be displayed within all of the container's subcomponents, except for those that have a non-null
cursor. The method may have no visual effect if the Java platform implementation and/or the native system do not support changing the mouse cursor shape.
cursor
- One of the constants defined by the Cursor
class; if this parameter is null
then this component will inherit the cursor of its parentpublic Cursor getCursor()
Cursor.DEFAULT_CURSOR
is returned.public boolean isCursorSet()
false
, this Component is inheriting its cursor from an ancestor.true
if the cursor has been explicitly set for this Component; false
otherwise.public void paint(Graphics g)
This method is called when the contents of the component should be painted; such as when the component is first being shown or is damaged and in need of repair. The clip rectangle in the Graphics
parameter is set to the area which needs to be painted. Subclasses of Component
that override this method need not call super.paint(g)
.
For performance reasons, Component
s with zero width or height aren't considered to need painting when they are first shown, and also aren't considered to need repair.
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.
g
- the graphics context to use for paintingpublic void update(Graphics g)
If this component is not a lightweight component, the AWT calls the update
method in response to a call to repaint
. You can assume that the background is not cleared.
The update
method of Component
calls this component's paint
method to redraw this component. This method is commonly overridden by subclasses which need to do additional work in response to a call to repaint
. Subclasses of Component that override this method should either call super.update(g)
, or call paint(g)
directly from their update
method.
The origin of the graphics context, its (0
, 0
) coordinate point, is the top-left corner of this component. The clipping region of the graphics context is the bounding rectangle of this component.
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.
g
- the specified context to use for updatingpublic void paintAll(Graphics g)
The origin of the graphics context, its (0
, 0
) coordinate point, is the top-left corner of this component. The clipping region of the graphics context is the bounding rectangle of this component.
g
- the graphics context to use for paintingpublic void repaint()
If this component is a lightweight component, this method causes a call to this component's paint
method as soon as possible. Otherwise, this method causes a call to this component's update
method as soon as possible.
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.
public void repaint(long tm)
paint
within tm
milliseconds. 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.
tm
- maximum time in milliseconds before updatepublic void repaint(int x, int y, int width, int height)
If this component is a lightweight component, this method causes a call to this component's paint
method as soon as possible. Otherwise, this method causes a call to this component's update
method as soon as possible.
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.
x
- the x coordinatey
- the y coordinatewidth
- the widthheight
- the heightpublic void repaint(long tm, int x, int y, int width, int height)
tm
milliseconds. If this component is a lightweight component, this method causes a call to this component's paint
method. Otherwise, this method causes a call to this component's update
method.
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.
tm
- maximum time in milliseconds before updatex
- the x coordinatey
- the y coordinatewidth
- the widthheight
- the heightpublic void print(Graphics g)
The default implementation of this method calls the paint
method.
The origin of the graphics context, its (0
, 0
) coordinate point, is the top-left corner of this component. The clipping region of the graphics context is the bounding rectangle of this component.
g
- the graphics context to use for printingpublic void printAll(Graphics g)
The origin of the graphics context, its (0
, 0
) coordinate point, is the top-left corner of this component. The clipping region of the graphics context is the bounding rectangle of this component.
g
- the graphics context to use for printingpublic boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h)
imageUpdate
method of an ImageObserver
is called when more information about an image which had been previously requested using an asynchronous routine such as the drawImage
method of Graphics
becomes available. See the definition of imageUpdate
for more information on this method and its arguments. The imageUpdate
method of Component
incrementally draws an image on the component as more of the bits of the image are available.
If the system property awt.image.incrementaldraw
is missing or has the value true
, the image is incrementally drawn. If the system property has any other value, then the image is not drawn until it has been completely loaded.
Also, if incremental drawing is in effect, the value of the system property awt.image.redrawrate
is interpreted as an integer to give the maximum redraw rate, in milliseconds. If the system property is missing or cannot be interpreted as an integer, the redraw rate is once every 100ms.
The interpretation of the x
, y
, width
, and height
arguments depends on the value of the infoflags
argument.
imageUpdate
in interface ImageObserver
img
- the image being observedinfoflags
- see imageUpdate
for more informationx
- the x coordinatey
- the y coordinatew
- the widthh
- the heightfalse
if the infoflags indicate that the image is completely loaded; true
otherwise.public Image createImage(ImageProducer producer)
producer
- the image producerpublic Image createImage(int width, int height)
width
- the specified widthheight
- the specified heightnull
value if the component is not displayable or GraphicsEnvironment.isHeadless()
returns true
.public VolatileImage createVolatileImage(int width, int height)
width
- the specified widthheight
- the specified heightnull
value if the component is not displayable or GraphicsEnvironment.isHeadless()
returns true
.public VolatileImage createVolatileImage(int width, int height, ImageCapabilities caps) throws AWTException
VolatileImage
interface.width
- the specified widthheight
- the specified heightcaps
- the image capabilitiesnull
value if the component is not displayable or GraphicsEnvironment.isHeadless()
returns true
.AWTException
- if an image with the specified capabilities cannot be createdpublic boolean prepareImage(Image image, ImageObserver observer)
image
- the Image
for which to prepare a screen representationobserver
- the ImageObserver
object to be notified as the image is being preparedtrue
if the image has already been fully prepared; false
otherwisepublic boolean prepareImage(Image image, int width, int height, ImageObserver observer)
The image data is downloaded asynchronously in another thread, and an appropriately scaled screen representation of the image is generated.
image
- the instance of Image
for which to prepare a screen representationwidth
- the width of the desired screen representationheight
- the height of the desired screen representationobserver
- the ImageObserver
object to be notified as the image is being preparedtrue
if the image has already been fully prepared; false
otherwisepublic int checkImage(Image image, ImageObserver observer)
This method does not cause the image to begin loading. An application must use the prepareImage
method to force the loading of an image.
Information on the flags returned by this method can be found with the discussion of the ImageObserver
interface.
image
- the Image
object whose status is being checkedobserver
- the ImageObserver
object to be notified as the image is being preparedImageObserver
flags indicating what information about the image is currently availablepublic int checkImage(Image image, int width, int height, ImageObserver observer)
This method does not cause the image to begin loading. An application must use the prepareImage
method to force the loading of an image.
The checkImage
method of Component
calls its peer's checkImage
method to calculate the flags. If this component does not yet have a peer, the component's toolkit's checkImage
method is called instead.
Information on the flags returned by this method can be found with the discussion of the ImageObserver
interface.
image
- the Image
object whose status is being checkedwidth
- the width of the scaled version whose status is to be checkedheight
- the height of the scaled version whose status is to be checkedobserver
- the ImageObserver
object to be notified as the image is being preparedImageObserver
flags indicating what information about the image is currently availablepublic void setIgnoreRepaint(boolean ignoreRepaint)
This is useful, for example, if running under full-screen mode and better performance is desired, or if page-flipping is used as the buffer strategy.
ignoreRepaint
- true
if the paint messages from the OS should be ignored; otherwise false
public boolean getIgnoreRepaint()
public boolean contains(int x, int y)
x
and y
are defined to be relative to the coordinate system of this component.x
- the x coordinate of the pointy
- the y coordinate of the pointtrue
if the point is within the component; otherwise false
@Deprecated public boolean inside(int x, int y)
x
- the x coordinate of the pointy
- the y coordinate of the pointtrue
if the point is within the component; otherwise false
public boolean contains(Point p)
p
- the pointtrue
if the point is within the component; otherwise false
NullPointerException
- if p
is null
public Component getComponentAt(int x, int y)
The locate
method of Component
simply returns the component itself if the (x, y) coordinate location is inside its bounding box, and null
otherwise.
x
- the x coordinatey
- the y coordinatenull
if the location is outside this component@Deprecated public Component locate(int x, int y)
x
- the x coordinate to search for components aty
- the y coordinate to search for components atnull
public Component getComponentAt(Point p)
p
- the pointnull
@Deprecated public void deliverEvent(Event e)
dispatchEvent(AWTEvent e)
.e
- the event to deliverpublic final void dispatchEvent(AWTEvent e)
processEvent
before returning for 1.1-style events which have been enabled for the Component
.e
- the event@Deprecated public boolean postEvent(Event e)
MenuContainer
postEvent
in interface MenuContainer
e
- the event to dispatchpublic void addComponentListener(ComponentListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the component listenerpublic void removeComponentListener(ComponentListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the component listenerpublic ComponentListener[] getComponentListeners()
ComponentListener
s of this component or an empty array if no component listeners are currently registeredpublic void addFocusListener(FocusListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the focus listenerpublic void removeFocusListener(FocusListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the focus listenerpublic FocusListener[] getFocusListeners()
FocusListener
s or an empty array if no component listeners are currently registeredpublic void addHierarchyListener(HierarchyListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the hierarchy listenerpublic void removeHierarchyListener(HierarchyListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the hierarchy listenerpublic HierarchyListener[] getHierarchyListeners()
HierarchyListener
s or an empty array if no hierarchy listeners are currently registeredpublic void addHierarchyBoundsListener(HierarchyBoundsListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the hierarchy bounds listenerpublic void removeHierarchyBoundsListener(HierarchyBoundsListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the hierarchy bounds listenerpublic HierarchyBoundsListener[] getHierarchyBoundsListeners()
HierarchyBoundsListener
s or an empty array if no hierarchy bounds listeners are currently registeredpublic void addKeyListener(KeyListener l)
Refer to AWT Threading Issues for details on AWT's threading model.
l
- the key listener.public void removeKeyListener(KeyListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the key listenerpublic KeyListener[] getKeyListeners()
KeyListener
s or an empty array if no key listeners are currently registeredpublic void addMouseListener(MouseListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the mouse listenerpublic void removeMouseListener(MouseListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the mouse listenerpublic MouseListener[] getMouseListeners()
MouseListener
s or an empty array if no mouse listeners are currently registeredpublic void addMouseMotionListener(MouseMotionListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the mouse motion listenerpublic void removeMouseMotionListener(MouseMotionListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the mouse motion listenerpublic MouseMotionListener[] getMouseMotionListeners()
MouseMotionListener
s or an empty array if no mouse motion listeners are currently registeredpublic void addMouseWheelListener(MouseWheelListener l)
For information on how mouse wheel events are dispatched, see the class description for MouseWheelEvent
.
If l is null
, no exception is thrown and no action is performed.
Refer to AWT Threading Issues for details on AWT's threading model.
l
- the mouse wheel listenerpublic void removeMouseWheelListener(MouseWheelListener l)
Refer to AWT Threading Issues for details on AWT's threading model.
l
- the mouse wheel listener.public MouseWheelListener[] getMouseWheelListeners()
MouseWheelListener
s or an empty array if no mouse wheel listeners are currently registeredpublic void addInputMethodListener(InputMethodListener l)
getInputMethodRequests
to return an InputMethodRequests
instance. If listener l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the input method listenerpublic void removeInputMethodListener(InputMethodListener l)
l
is null
, no exception is thrown and no action is performed. Refer to AWT Threading Issues for details on AWT's threading model.
l
- the input method listenerpublic InputMethodListener[] getInputMethodListeners()
InputMethodListener
s or an empty array if no input method listeners are currently registeredpublic <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListener
s upon this Component
. FooListener
s are registered using the addFooListener
method. You can specify the listenerType
argument with a class literal, such as FooListener.class
. For example, you can query a Component c
for its mouse listeners with the following code:
MouseListener[] mls = (MouseListener[])(c.getListeners(MouseListener.class));If no such listeners exist, this method returns an empty array.
T
- the type of the listenerslistenerType
- the type of listeners requested; this parameter should specify an interface that descends from java.util.EventListener
FooListener
s on this component, or an empty array if no such listeners have been addedClassCastException
- if listenerType
doesn't specify a class or interface that implements java.util.EventListener
NullPointerException
- if listenerType
is null
public InputMethodRequests getInputMethodRequests()
InputMethodRequests
instance. At the same time, it also has to handle input method events.null
by defaultpublic InputContext getInputContext()
null
if no context can be determinedprotected final void enableEvents(long eventsToEnable)
Event types are automatically enabled when a listener for that event type is added to the component.
This method only needs to be invoked by subclasses of Component
which desire to have the specified event types delivered to processEvent
regardless of whether or not a listener is registered.
eventsToEnable
- the event mask defining the event typesprotected final void disableEvents(long eventsToDisable)
eventsToDisable
- the event mask defining the event typesprotected AWTEvent coalesceEvents(AWTEvent existingEvent, AWTEvent newEvent)
EventQueue.postEvent
if an event with the same ID as the event to be posted is found in the queue (both events must have this component as their source). This method either returns a coalesced event which replaces the existing event (and the new event is then discarded), or null
to indicate that no combining should be done (add the second event to the end of the queue). Either event parameter may be modified and returned, as the other one is discarded unless null
is returned. This implementation of coalesceEvents
coalesces two event types: mouse move (and drag) events, and paint (and update) events. For mouse move events the last event is always returned, causing intermediate moves to be discarded. For paint events, the new event is coalesced into a complex RepaintArea
in the peer. The new AWTEvent
is always returned.
existingEvent
- the event already on the EventQueue
newEvent
- the event being posted to the EventQueue
null
indicating that no coalescing was doneprotected void processEvent(AWTEvent e)
process<event type>Event
method for the given class of event. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the eventprotected void processComponentEvent(ComponentEvent e)
ComponentListener
objects. This method is not called unless component events are enabled for this component. Component events are enabled when one of the following occurs:
ComponentListener
object is registered via addComponentListener
. enableEvents
. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the component eventprotected void processFocusEvent(FocusEvent e)
FocusListener
objects. This method is not called unless focus events are enabled for this component. Focus events are enabled when one of the following occurs:
FocusListener
object is registered via addFocusListener
. enableEvents
. If focus events are enabled for a Component
, the current KeyboardFocusManager
determines whether or not a focus event should be dispatched to registered FocusListener
objects. If the events are to be dispatched, the KeyboardFocusManager
calls the Component
's dispatchEvent
method, which results in a call to the Component
's processFocusEvent
method.
If focus events are enabled for a Component
, calling the Component
's dispatchEvent
method with a FocusEvent
as the argument will result in a call to the Component
's processFocusEvent
method regardless of the current KeyboardFocusManager
.
Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the focus eventprotected void processKeyEvent(KeyEvent e)
KeyListener
objects. This method is not called unless key events are enabled for this component. Key events are enabled when one of the following occurs:
KeyListener
object is registered via addKeyListener
. enableEvents
. If key events are enabled for a Component
, the current KeyboardFocusManager
determines whether or not a key event should be dispatched to registered KeyListener
objects. The DefaultKeyboardFocusManager
will not dispatch key events to a Component
that is not the focus owner or is not showing.
As of J2SE 1.4, KeyEvent
s are redirected to the focus owner. Please see the Focus Specification for further information.
Calling a Component
's dispatchEvent
method with a KeyEvent
as the argument will result in a call to the Component
's processKeyEvent
method regardless of the current KeyboardFocusManager
as long as the component is showing, focused, and enabled, and key events are enabled on it.
If the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the key eventprotected void processMouseEvent(MouseEvent e)
MouseListener
objects. This method is not called unless mouse events are enabled for this component. Mouse events are enabled when one of the following occurs:
MouseListener
object is registered via addMouseListener
. enableEvents
. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the mouse eventprotected void processMouseMotionEvent(MouseEvent e)
MouseMotionListener
objects. This method is not called unless mouse motion events are enabled for this component. Mouse motion events are enabled when one of the following occurs:
MouseMotionListener
object is registered via addMouseMotionListener
. enableEvents
. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the mouse motion eventprotected void processMouseWheelEvent(MouseWheelEvent e)
MouseWheelListener
objects. This method is not called unless mouse wheel events are enabled for this component. Mouse wheel events are enabled when one of the following occurs:
MouseWheelListener
object is registered via addMouseWheelListener
. enableEvents
. For information on how mouse wheel events are dispatched, see the class description for MouseWheelEvent
.
Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the mouse wheel eventprotected void processInputMethodEvent(InputMethodEvent e)
InputMethodListener
objects. This method is not called unless input method events are enabled for this component. Input method events are enabled when one of the following occurs:
InputMethodListener
object is registered via addInputMethodListener
. enableEvents
. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the input method eventprotected void processHierarchyEvent(HierarchyEvent e)
HierarchyListener
objects. This method is not called unless hierarchy events are enabled for this component. Hierarchy events are enabled when one of the following occurs:
HierarchyListener
object is registered via addHierarchyListener
. enableEvents
. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the hierarchy eventprotected void processHierarchyBoundsEvent(HierarchyEvent e)
HierarchyBoundsListener
objects. This method is not called unless hierarchy bounds events are enabled for this component. Hierarchy bounds events are enabled when one of the following occurs:
HierarchyBoundsListener
object is registered via addHierarchyBoundsListener
. enableEvents
. Note that if the event parameter is null
the behavior is unspecified and may result in an exception.
e
- the hierarchy event@Deprecated public boolean handleEvent(Event evt)
evt
- the event to handletrue
if the event was handled, false
otherwise@Deprecated public boolean mouseDown(Event evt, int x, int y)
evt
- the event to handlex
- the x coordinatey
- the y coordinatefalse
@Deprecated public boolean mouseDrag(Event evt, int x, int y)
evt
- the event to handlex
- the x coordinatey
- the y coordinatefalse
@Deprecated public boolean mouseUp(Event evt, int x, int y)
evt
- the event to handlex
- the x coordinatey
- the y coordinatefalse
@Deprecated public boolean mouseMove(Event evt, int x, int y)
evt
- the event to handlex
- the x coordinatey
- the y coordinatefalse
@Deprecated public boolean mouseEnter(Event evt, int x, int y)
evt
- the event to handlex
- the x coordinatey
- the y coordinatefalse
@Deprecated public boolean mouseExit(Event evt, int x, int y)
evt
- the event to handlex
- the x coordinatey
- the y coordinatefalse
@Deprecated public boolean keyDown(Event evt, int key)
evt
- the event to handlekey
- the key pressedfalse
@Deprecated public boolean keyUp(Event evt, int key)
evt
- the event to handlekey
- the key pressedfalse
@Deprecated public boolean action(Event evt, Object what)
evt
- the event to handlewhat
- the object acted onfalse
public void addNotify()
Component
displayable by connecting it to a native screen resource. This method is called internally by the toolkit and should not be called directly by programs. This method changes layout-related information, and therefore, invalidates the component hierarchy.
public void removeNotify()
Component
undisplayable by destroying it native screen resource. This method is called by the toolkit internally and should not be called directly by programs. Code overriding this method should call super.removeNotify
as the first line of the overriding method.
@Deprecated public boolean gotFocus(Event evt, Object what)
evt
- the event to handlewhat
- the object focusedfalse
@Deprecated public boolean lostFocus(Event evt, Object what)
evt
- the event to handlewhat
- the object focusedfalse
@Deprecated public boolean isFocusTraversable()
isFocusable()
.Component
can become the focus owner.true
if this Component
is focusable; false
otherwisepublic boolean isFocusable()
true
if this Component is focusable; false
otherwise.public void setFocusable(boolean focusable)
focusable
- indicates whether this Component is focusablepublic void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)
The default values for a Component's focus traversal keys are implementation-dependent. Sun recommends that all implementations for a particular native platform use the same default values. The recommendations for Windows and Unix are listed below. These recommendations are used in the Sun AWT implementations.
Identifier | Meaning | Default |
---|---|---|
KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS | Normal forward keyboard traversal | TAB on KEY_PRESSED, CTRL-TAB on KEY_PRESSED |
KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS | Normal reverse keyboard traversal | SHIFT-TAB on KEY_PRESSED, CTRL-SHIFT-TAB on KEY_PRESSED |
KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS | Go up one focus traversal cycle | none |
Using the AWTKeyStroke API, client code can specify on which of two specific KeyEvents, KEY_PRESSED or KEY_RELEASED, the focus traversal operation will occur. Regardless of which KeyEvent is specified, however, all KeyEvents related to the focus traversal key, including the associated KEY_TYPED event, will be consumed, and will not be dispatched to any Component. It is a runtime error to specify a KEY_TYPED event as mapping to a focus traversal operation, or to map the same event to multiple default focus traversal operations.
If a value of null is specified for the Set, this Component inherits the Set from its parent. If all ancestors of this Component have null specified for the Set, then the current KeyboardFocusManager's default Set is used.
This method may throw a ClassCastException
if any Object
in keystrokes
is not an AWTKeyStroke
.
id
- one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, or KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYSkeystrokes
- the Set of AWTKeyStroke for the specified operationIllegalArgumentException
- if id is not one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, or KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, or if keystrokes contains null, or if any keystroke represents a KEY_TYPED event, or if any keystroke already maps to another focus traversal operation for this Componentpublic Set<AWTKeyStroke> getFocusTraversalKeys(int id)
setFocusTraversalKeys
for a full description of each key.) If a Set of traversal keys has not been explicitly defined for this Component, then this Component's parent's Set is returned. If no Set has been explicitly defined for any of this Component's ancestors, then the current KeyboardFocusManager's default Set is returned.
id
- one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, or KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYSIllegalArgumentException
- if id is not one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, or KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYSpublic boolean areFocusTraversalKeysSet(int id)
false
, this Component is inheriting the Set from an ancestor, or from the current KeyboardFocusManager.id
- one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, or KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYStrue
if the Set of focus traversal keys for the given focus traversal operation has been explicitly defined for this Component; false
otherwise.IllegalArgumentException
- if id is not one of KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, or KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYSpublic void setFocusTraversalKeysEnabled(boolean focusTraversalKeysEnabled)
focusTraversalKeysEnabled
- whether focus traversal keys are enabled for this Componentpublic boolean getFocusTraversalKeysEnabled()
public void requestFocus()
This method cannot be used to set the focus owner to no Component at all. Use KeyboardFocusManager.clearGlobalFocusOwner()
instead.
Because the focus behavior of this method is platform-dependent, developers are strongly encouraged to use requestFocusInWindow
when possible.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
public void requestFocus(FocusEvent.Cause cause)
cause
that this Component get the input focus, and that this Component's top-level ancestor become the focused Window. This component must be displayable, focusable, visible and all of its ancestors (with the exception of the top-level Window) must be visible for the request to be granted. Every effort will be made to honor the request; however, in some cases it may be impossible to do so. Developers must never assume that this Component is the focus owner until this Component receives a FOCUS_GAINED event. The focus request effect may also depend on the provided cause value. If this request is succeed the FocusEvent
generated in the result will receive the cause value specified as the argument of method. If this request is denied because this Component's top-level Window cannot become the focused Window, the request will be remembered and will be granted when the Window is later focused by the user.
This method cannot be used to set the focus owner to no Component at all. Use KeyboardFocusManager.clearGlobalFocusOwner()
instead.
Because the focus behavior of this method is platform-dependent, developers are strongly encouraged to use requestFocusInWindow(FocusEvent.Cause)
when possible.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
cause
- the cause why the focus is requestedprotected boolean requestFocus(boolean temporary)
Component
get the input focus, and that this Component
's top-level ancestor become the focused Window
. This component must be displayable, focusable, visible and all of its ancestors (with the exception of the top-level Window) must be visible for the request to be granted. Every effort will be made to honor the request; however, in some cases it may be impossible to do so. Developers must never assume that this component is the focus owner until this component receives a FOCUS_GAINED event. If this request is denied because this component's top-level window cannot become the focused window, the request will be remembered and will be granted when the window is later focused by the user. This method returns a boolean value. If false
is returned, the request is guaranteed to fail. If true
is returned, the request will succeed unless it is vetoed, or an extraordinary event, such as disposal of the component's peer, occurs before the request can be granted by the native windowing system. Again, while a return value of true
indicates that the request is likely to succeed, developers must never assume that this component is the focus owner until this component receives a FOCUS_GAINED event.
This method cannot be used to set the focus owner to no component at all. Use KeyboardFocusManager.clearGlobalFocusOwner
instead.
Because the focus behavior of this method is platform-dependent, developers are strongly encouraged to use requestFocusInWindow
when possible.
Every effort will be made to ensure that FocusEvent
s generated as a result of this request will have the specified temporary value. However, because specifying an arbitrary temporary state may not be implementable on all native windowing systems, correct behavior for this method can be guaranteed only for lightweight Component
s. This method is not intended for general use, but exists instead as a hook for lightweight component libraries, such as Swing.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
temporary
- true if the focus change is temporary, such as when the window loses the focus; for more information on temporary focus changes see the Focus Specification
false
if the focus change request is guaranteed to fail; true
if it is likely to succeedprotected boolean requestFocus(boolean temporary, FocusEvent.Cause cause)
cause
that this Component
get the input focus, and that this Component
's top-level ancestor become the focused Window
. This component must be displayable, focusable, visible and all of its ancestors (with the exception of the top-level Window) must be visible for the request to be granted. Every effort will be made to honor the request; however, in some cases it may be impossible to do so. Developers must never assume that this component is the focus owner until this component receives a FOCUS_GAINED event. If this request is denied because this component's top-level window cannot become the focused window, the request will be remembered and will be granted when the window is later focused by the user. This method returns a boolean value. If false
is returned, the request is guaranteed to fail. If true
is returned, the request will succeed unless it is vetoed, or an extraordinary event, such as disposal of the component's peer, occurs before the request can be granted by the native windowing system. Again, while a return value of true
indicates that the request is likely to succeed, developers must never assume that this component is the focus owner until this component receives a FOCUS_GAINED event.
The focus request effect may also depend on the provided cause value. If this request is succeed the {FocusEvent} generated in the result will receive the cause value specified as the argument of the method.
This method cannot be used to set the focus owner to no component at all. Use KeyboardFocusManager.clearGlobalFocusOwner
instead.
Because the focus behavior of this method is platform-dependent, developers are strongly encouraged to use requestFocusInWindow
when possible.
Every effort will be made to ensure that FocusEvent
s generated as a result of this request will have the specified temporary value. However, because specifying an arbitrary temporary state may not be implementable on all native windowing systems, correct behavior for this method can be guaranteed only for lightweight Component
s. This method is not intended for general use, but exists instead as a hook for lightweight component libraries, such as Swing.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
temporary
- true if the focus change is temporary, such as when the window loses the focus; for more information on temporary focus changes see the Focus Specification
cause
- the cause why the focus is requestedfalse
if the focus change request is guaranteed to fail; true
if it is likely to succeedpublic boolean requestFocusInWindow()
This method returns a boolean value. If false
is returned, the request is guaranteed to fail. If true
is returned, the request will succeed unless it is vetoed, or an extraordinary event, such as disposal of the Component's peer, occurs before the request can be granted by the native windowing system. Again, while a return value of true
indicates that the request is likely to succeed, developers must never assume that this Component is the focus owner until this Component receives a FOCUS_GAINED event.
This method cannot be used to set the focus owner to no Component at all. Use KeyboardFocusManager.clearGlobalFocusOwner()
instead.
The focus behavior of this method can be implemented uniformly across platforms, and thus developers are strongly encouraged to use this method over requestFocus
when possible. Code which relies on requestFocus
may exhibit different focus behavior on different platforms.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
false
if the focus change request is guaranteed to fail; true
if it is likely to succeedpublic boolean requestFocusInWindow(FocusEvent.Cause cause)
cause
that this Component get the input focus, if this Component's top-level ancestor is already the focused Window. This component must be displayable, focusable, visible and all of its ancestors (with the exception of the top-level Window) must be visible for the request to be granted. Every effort will be made to honor the request; however, in some cases it may be impossible to do so. Developers must never assume that this Component is the focus owner until this Component receives a FOCUS_GAINED event. This method returns a boolean value. If false
is returned, the request is guaranteed to fail. If true
is returned, the request will succeed unless it is vetoed, or an extraordinary event, such as disposal of the Component's peer, occurs before the request can be granted by the native windowing system. Again, while a return value of true
indicates that the request is likely to succeed, developers must never assume that this Component is the focus owner until this Component receives a FOCUS_GAINED event.
The focus request effect may also depend on the provided cause value. If this request is succeed the FocusEvent
generated in the result will receive the cause value specified as the argument of the method.
This method cannot be used to set the focus owner to no Component at all. Use KeyboardFocusManager.clearGlobalFocusOwner()
instead.
The focus behavior of this method can be implemented uniformly across platforms, and thus developers are strongly encouraged to use this method over requestFocus(FocusEvent.Cause)
when possible. Code which relies on requestFocus(FocusEvent.Cause)
may exhibit different focus behavior on different platforms.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
cause
- the cause why the focus is requestedfalse
if the focus change request is guaranteed to fail; true
if it is likely to succeedprotected boolean requestFocusInWindow(boolean temporary)
Component
get the input focus, if this Component
's top-level ancestor is already the focused Window
. This component must be displayable, focusable, visible and all of its ancestors (with the exception of the top-level Window) must be visible for the request to be granted. Every effort will be made to honor the request; however, in some cases it may be impossible to do so. Developers must never assume that this component is the focus owner until this component receives a FOCUS_GAINED event. This method returns a boolean value. If false
is returned, the request is guaranteed to fail. If true
is returned, the request will succeed unless it is vetoed, or an extraordinary event, such as disposal of the component's peer, occurs before the request can be granted by the native windowing system. Again, while a return value of true
indicates that the request is likely to succeed, developers must never assume that this component is the focus owner until this component receives a FOCUS_GAINED event.
This method cannot be used to set the focus owner to no component at all. Use KeyboardFocusManager.clearGlobalFocusOwner
instead.
The focus behavior of this method can be implemented uniformly across platforms, and thus developers are strongly encouraged to use this method over requestFocus
when possible. Code which relies on requestFocus
may exhibit different focus behavior on different platforms.
Every effort will be made to ensure that FocusEvent
s generated as a result of this request will have the specified temporary value. However, because specifying an arbitrary temporary state may not be implementable on all native windowing systems, correct behavior for this method can be guaranteed only for lightweight components. This method is not intended for general use, but exists instead as a hook for lightweight component libraries, such as Swing.
Note: Not all focus transfers result from invoking this method. As such, a component may receive focus without this or any of the other requestFocus
methods of Component
being invoked.
temporary
- true if the focus change is temporary, such as when the window loses the focus; for more information on temporary focus changes see the Focus Specification
false
if the focus change request is guaranteed to fail; true
if it is likely to succeedpublic Container getFocusCycleRootAncestor()
public boolean isFocusCycleRoot(Container container)
container
- the Container to be testedtrue
if the specified Container is a focus-cycle- root of this Component; false
otherwisepublic void transferFocus()
@Deprecated public void nextFocus()
public void transferFocusBackward()
public void transferFocusUpCycle()
public boolean hasFocus()
true
if this Component
is the focus owner. This method is obsolete, and has been replaced by isFocusOwner()
.true
if this Component
is the focus owner; false
otherwisepublic boolean isFocusOwner()
true
if this Component
is the focus owner.true
if this Component
is the focus owner; false
otherwisepublic void add(PopupMenu popup)
popup
- the popup menu to be added to the component.NullPointerException
- if popup
is null
public void remove(MenuComponent popup)
remove
in interface MenuContainer
popup
- the popup menu to be removedprotected String paramString()
null
.public String toString()
public void list()
System.out
.public void list(PrintStream out)
out
- a print streamNullPointerException
- if out
is null
public void list(PrintStream out, int indent)
out
- a print streamindent
- number of spaces to indentNullPointerException
- if out
is null
public void list(PrintWriter out)
out
- the print writer to print toNullPointerException
- if out
is null
public void list(PrintWriter out, int indent)
out
- the print writer to print toindent
- the number of spaces to indentNullPointerException
- if out
is null
public void addPropertyChangeListener(PropertyChangeListener listener)
Component
is inheriting a bound property, then no event will be fired in response to a change in the inherited property. If listener
is null
, no exception is thrown and no action is performed.
listener
- the property change listener to be addedpublic void removePropertyChangeListener(PropertyChangeListener listener)
If listener is null, no exception is thrown and no action is performed.
listener
- the PropertyChangeListener to be removedpublic PropertyChangeListener[] getPropertyChangeListeners()
PropertyChangeListener
s or an empty array if no property change listeners are currently registeredpublic void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
Component
is inheriting a bound property, then no event will be fired in response to a change in the inherited property. If propertyName
or listener
is null
, no exception is thrown and no action is taken.
propertyName
- one of the property names listed abovelistener
- the property change listener to be addedpublic void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
PropertyChangeListener
from the listener list for a specific property. This method should be used to remove PropertyChangeListener
s that were registered for a specific bound property. If propertyName
or listener
is null
, no exception is thrown and no action is taken.
propertyName
- a valid property namelistener
- the PropertyChangeListener to be removedpublic PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
propertyName
- the property namePropertyChangeListener
s associated with the named property; if no such listeners have been added or if propertyName
is null
, an empty array is returnedprotected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
propertyName
- the property whose value has changedoldValue
- the property's previous valuenewValue
- the property's new valueprotected void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
propertyName
- the property whose value has changedoldValue
- the property's previous valuenewValue
- the property's new valueprotected void firePropertyChange(String propertyName, int oldValue, int newValue)
propertyName
- the property whose value has changedoldValue
- the property's previous valuenewValue
- the property's new valuepublic void firePropertyChange(String propertyName, byte oldValue, byte newValue)
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the property (as a byte)newValue
- the new value of the property (as a byte)public void firePropertyChange(String propertyName, char oldValue, char newValue)
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the property (as a char)newValue
- the new value of the property (as a char)public void firePropertyChange(String propertyName, short oldValue, short newValue)
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the property (as a short)newValue
- the new value of the property (as a short)public void firePropertyChange(String propertyName, long oldValue, long newValue)
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the property (as a long)newValue
- the new value of the property (as a long)public void firePropertyChange(String propertyName, float oldValue, float newValue)
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the property (as a float)newValue
- the new value of the property (as a float)public void firePropertyChange(String propertyName, double oldValue, double newValue)
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the property (as a double)newValue
- the new value of the property (as a double)public void setComponentOrientation(ComponentOrientation o)
LayoutManager
and Component
subclasses will use this property to determine how to lay out and draw components. At construction time, a component's orientation is set to ComponentOrientation.UNKNOWN
, indicating that it has not been specified explicitly. The UNKNOWN orientation behaves the same as ComponentOrientation.LEFT_TO_RIGHT
.
To set the orientation of a single component, use this method. To set the orientation of an entire component hierarchy, use applyComponentOrientation
.
This method changes layout-related information, and therefore, invalidates the component hierarchy.
o
- the orientation to be setpublic ComponentOrientation getComponentOrientation()
LayoutManager
and Component
subclasses that wish to respect orientation should call this method to get the component's orientation before performing layout or drawing.public void applyComponentOrientation(ComponentOrientation orientation)
ComponentOrientation
property of this component and all components contained within it. This method changes layout-related information, and therefore, invalidates the component hierarchy.
orientation
- the new component orientation of this component and the components contained within it.NullPointerException
- if orientation
is null.public AccessibleContext getAccessibleContext()
AccessibleContext
associated with this Component
. The method implemented by this base class returns null. Classes that extend Component
should implement this method to return the AccessibleContext
associated with the subclass.AccessibleContext
of this Component
public void setMixingCutoutShape(Shape shape)
The shape
argument may have the following values:
null
- reverts the default cutout shape (the rectangle equal to the component's getBounds()
) new Rectangle()
. The most common example when the 'mixing-cutout' shape is needed is a glass pane component. The JRootPane.setGlassPane(java.awt.Component)
method automatically sets the empty-shape as the 'mixing-cutout' shape for the given glass pane component. If a developer needs some other 'mixing-cutout' shape for the glass pane (which is rare), this must be changed manually after installing the glass pane to the root pane.
shape
- the new 'mixing-cutout' shape
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/java/awt/Component.html