java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.awt
类 Component

java.lang.Object
  继承者 java.awt.Component
所有已实现的接口:
ImageObserver, MenuContainer, Serializable
直接已知子类:
Button, Canvas, Checkbox, Choice, Container, Label, List, Scrollbar, TextComponent

public abstract class Component
extends Object
implements ImageObserver, MenuContainer, Serializable

component 是一个具有图形表示能力的对象,可在屏幕上显示,并可与用户进行交互。典型图形用户界面中的按钮、复选框和滚动条都是组件示例。

Component 是与菜单不相关的 Abstract Window Toolkit 组件的抽象超类。还可以直接扩展类 Component 来创建一个轻量组件。轻量组件是与本机不透明窗口不相关的组件。

序列化

存储对象时,仅保存那些符合 Serializable 协议的 AWT 侦听器,注意这一点很重要。如果具有侦听器的 AWT 对象未标记为可序列化,则在 writeObject 时将会被丢弃。开发人员始终需要考虑序列化对象的意义。需要注意的一种情形是:
    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");
        }
    }
 
在此示例中,通过 aButton 自身进行序列化会使得 MyApp 及其引用的所有内容也都被序列化。问题是,原本没打算序列化的侦听器也被同时序列化了。为分别判断 MyAppActionListener 是否可序列化,可使用一个嵌套类,如下面示例所示:
    import java.awt.*;
    import java.awt.event.*;
    import java.io.Serializable;

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

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

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

有关焦点子系统的详情,请参阅《The Java Tutorial》中的 How to Use the Focus Subsystem 部分,以及 Focus Specification 了解更多信息。

另请参见:
序列化表格

嵌套类摘要
protected  class Component.AccessibleAWTComponent
          用来为可访问性提供默认支持的 Component 的内部类。
protected  class Component.BltBufferStrategy
          用于将屏幕外的画面以位图传输方式传输到一个组件的内部类。
protected  class Component.FlipBufferStrategy
          在组件上翻转缓冲区的内部类。
 
字段摘要
static float BOTTOM_ALIGNMENT
          getAlignmentY 的易于使用的常量。
static float CENTER_ALIGNMENT
          getAlignmentYgetAlignmentX 的易于使用的常量。
static float LEFT_ALIGNMENT
          getAlignmentX 的易于使用的常量。
static float RIGHT_ALIGNMENT
          getAlignmentX 的易于使用的常量。
static float TOP_ALIGNMENT
          getAlignmentY() 的易于使用的常量。
 
从接口 java.awt.image.ImageObserver 继承的字段
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
构造方法摘要
protected Component()
          构造一个新组件。
 
方法摘要
 boolean action(Event evt, Object what)
          已过时。 从 JDK version 1.1 开始,应该将此组件作为组件(激发操作事件)上的 ActionListener 来注册。
 void add(PopupMenu popup)
          向组件添加指定的弹出菜单。
 void addComponentListener(ComponentListener l)
          添加指定的组件侦听器,接收此组件发出的组件事件。
 void addFocusListener(FocusListener l)
          添加指定的焦点侦听器,当此组件获得输入焦点时能够接收此组件发出的焦点事件。
 void addHierarchyBoundsListener(HierarchyBoundsListener l)
          添加指定的层次结构边界侦听器,当此容器所属的层次结构发生变化时能够接收此组件发出的层次结构边界事件。
 void addHierarchyListener(HierarchyListener l)
          添加指定的层次结构侦听器,当此容器所属的层次结构发生变化时能够接收此组件发出的层次结构变化事件。
 void addInputMethodListener(InputMethodListener l)
          添加指定的输入方法侦听器,接收此组件发出的输入方法事件。
 void addKeyListener(KeyListener l)
          添加指定的按键侦听器,接收此组件发出的按键事件。
 void addMouseListener(MouseListener l)
          添加指定的鼠标侦听器,接收此组件发出的鼠标事件。
 void addMouseMotionListener(MouseMotionListener l)
          添加指定的鼠标移动侦听器,接收此组件发出的鼠标移动事件。
 void addMouseWheelListener(MouseWheelListener l)
          添加指定的鼠标轮侦听器,接收此组件发出的鼠标轮事件。
 void addNotify()
          通过将此 Component 连接到一个本机屏幕资源使其成为可显示的。
 void addPropertyChangeListener(PropertyChangeListener listener)
          向侦听器列表添加一个 PropertyChangeListener。
 void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
          向指定属性的侦听器列表添加一个 PropertyChangeListener。
 void applyComponentOrientation(ComponentOrientation orientation)
          设置此组件及其包含的所有组件的 ComponentOrientation 属性。
 boolean areFocusTraversalKeysSet(int id)
          返回是否为此 Component 显式定义了给定焦点遍历操作的焦点遍历键 Set。
 Rectangle bounds()
          已过时。 从 JDK version 1.1 开始,由 getBounds() 取代。
 int checkImage(Image image, ImageObserver observer)
          返回指定图像屏幕表示的构造状态。
 int checkImage(Image image, int width, int height, ImageObserver observer)
          返回指定图像屏幕表示的构造状态。
protected  AWTEvent coalesceEvents(AWTEvent existingEvent, AWTEvent newEvent)
          将加入的事件与已有的事件组合在一起。
 boolean contains(int x, int y)
          检查组件是否“包含”指定的点,其中 xy 是相对于此组件的坐标系统定义的。
 boolean contains(Point p)
          检查组件是否“包含”指定的点,其中该点的 xy 坐标是相对于此组件的坐标系统定义的。
 Image createImage(ImageProducer producer)
          由指定的图像生成器创建一幅图像。
 Image createImage(int width, int height)
          创建一幅用于双缓冲的、可在屏幕外绘制的图像。
 VolatileImage createVolatileImage(int width, int height)
          创建一幅用于双缓冲的、可变的、可在屏幕外绘制的图像。
 VolatileImage createVolatileImage(int width, int height, ImageCapabilities caps)
          创建一幅具有给定容量的、可变的、可在屏幕外绘制的图像。
 void deliverEvent(Event e)
          已过时。 从 JDK version 1.1 开始,由 dispatchEvent(AWTEvent e) 取代。
 void disable()
          已过时。 从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。
protected  void disableEvents(long eventsToDisable)
          禁用由传递给此组件的指定事件屏蔽参数所定义的事件。
 void dispatchEvent(AWTEvent e)
          为组件或其子组件之一指派事件。
 void doLayout()
          提示布局管理器布局此组件。
 void enable()
          已过时。 从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。
 void enable(boolean b)
          已过时。 从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。
protected  void enableEvents(long eventsToEnable)
          启用由传递给此组件的指定事件屏蔽参数所定义的事件。
 void enableInputMethods(boolean enable)
          启用或禁用此方法的输入方法支持。
protected  void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
          支持报告布尔属性的 bound 属性改变。
 void firePropertyChange(String propertyName, byte oldValue, byte newValue)
          报告 bound 属性的改变。
 void firePropertyChange(String propertyName, char oldValue, char newValue)
          报告 bound 属性的改变。
 void firePropertyChange(String propertyName, double oldValue, double newValue)
          报告 bound 属性的改变。
 void firePropertyChange(String propertyName, float oldValue, float newValue)
          报告 bound 属性的改变。
protected  void firePropertyChange(String propertyName, int oldValue, int newValue)
          支持报告整数属性的 bound 属性改变。
 void firePropertyChange(String propertyName, long oldValue, long newValue)
          报告 bound 属性的改变。
protected  void firePropertyChange(String propertyName, Object oldValue, Object newValue)
          支持报告 Object 属性的 bound 属性改变。
 void firePropertyChange(String propertyName, short oldValue, short newValue)
          报告 bound 属性的改变。
 AccessibleContext getAccessibleContext()
          获得与此 Component 相关的 AccessibleContext
 float getAlignmentX()
          返回 x 轴的对齐方式。
 float getAlignmentY()
          返回 y 轴的对齐方式。
 Color getBackground()
          获得组件的背景色。
 Rectangle getBounds()
          以 Rectangle 对象的形式获得组件的边界。
 Rectangle getBounds(Rectangle rv)
          将组件的边界存储到“返回值”rv 中并返回 rv
 ColorModel getColorModel()
          获得用于在输出设备上显示组件的 ColorModel 实例。
 Component getComponentAt(int x, int y)
          确定此组件或其直接子组件之一是否包含(xy)位置,并且如果是,则返回包含该位置的组件。
 Component getComponentAt(Point p)
          返回包含指定点的组件或子组件。
 ComponentListener[] getComponentListeners()
          返回在此组件上所有已注册的组件侦听器的数组。
 ComponentOrientation getComponentOrientation()
          检索用于排序此组件内的元素或文本的语言敏感的方向。
 Cursor getCursor()
          获得组件中的光标集合。
 DropTarget getDropTarget()
          获得与此 Component 相关的 DropTarget
 Container getFocusCycleRootAncestor()
          返回作为此 Component 焦点遍历循环的焦点循环根的 Container。
 FocusListener[] getFocusListeners()
          返回在此组件上所有已注册的焦点侦听器的数组。
 Set<AWTKeyStroke> getFocusTraversalKeys(int id)
          返回此 Component 的给定遍历操作的焦点遍历键 Set。
 boolean getFocusTraversalKeysEnabled()
          返回是否已为此 Component 启用了焦点遍历键。
 Font getFont()
          获得组件的字体。
 FontMetrics getFontMetrics(Font font)
          获得指定字体的字体规格。
 Color getForeground()
          获得组件的前景色。
 Graphics getGraphics()
          为组件创建一个图形上下文。
 GraphicsConfiguration getGraphicsConfiguration()
          获得与此 Component 相关的 GraphicsConfiguration
 int getHeight()
          返回组件的当前高度。
 HierarchyBoundsListener[] getHierarchyBoundsListeners()
          返回在此组件上所有已注册的层次结构边界侦听器的数组。
 HierarchyListener[] getHierarchyListeners()
          返回在此组件上所有已注册的层次结构侦听器的数组。
 boolean getIgnoreRepaint()
           
 InputContext getInputContext()
          获得此组件使用的输入上下文,用于处理在此组件中输入文本时与输入方法的通信。
 InputMethodListener[] getInputMethodListeners()
          返回在此组件上所有已注册的输入方法侦听器的数组。
 InputMethodRequests getInputMethodRequests()
          获得输入方法请求处理程序,该处理程序支持此组件输入方法发出的请求。
 KeyListener[] getKeyListeners()
          返回在此组件上所有已注册的按键侦听器的数组。
<T extends EventListener>
T[]
getListeners(Class<T> listenerType)
          返回一个当前在此 Component 上作为 FooListener 注册的所有对象的数组。
 Locale getLocale()
          获得组件的语言环境。
 Point getLocation()
          获得组件的位置,形式是指定组件左上角的一个点。
 Point getLocation(Point rv)
          将组件的 x,y 原点存储到“返回值” rv 中并返回 rv
 Point getLocationOnScreen()
          获得组件的位置,形式是一个指定屏幕坐标空间中组件左上角的一个点。
 Dimension getMaximumSize()
          获得组件的最大尺寸。
 Dimension getMinimumSize()
          获得组件的最小尺寸。
 MouseListener[] getMouseListeners()
          返回在此组件上所有已注册的鼠标侦听器的数组。
 MouseMotionListener[] getMouseMotionListeners()
          返回在此组件上所有已注册的鼠标移动侦听器的数组。
 Point getMousePosition()
          如果此 Component 正好位于鼠标指针下,则返回鼠标指针在 Component 的坐标空间中的位置;否则返回 null
 MouseWheelListener[] getMouseWheelListeners()
          返回在此组件上所有已注册的鼠标轮侦听器的数组。
 String getName()
          获得组件的名称。
 Container getParent()
          获得此组件的父级。
 java.awt.peer.ComponentPeer getPeer()
          已过时。 从 JDK version 1.1 开始,程序不应直接操作同位体;由 boolean isDisplayable() 取代。
 Dimension getPreferredSize()
          获得组件的首选大小。
 PropertyChangeListener[] getPropertyChangeListeners()
          返回在此组件上所有已注册的属性更改侦听器的数组。
 PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
          返回与指定属性相关联的所有侦听器的数组。
 Dimension getSize()
          以 Dimension 对象的形式返回组件的大小。
 Dimension getSize(Dimension rv)
          将组件的宽度/高度存储到“返回值”rv 中并返回 rv
 Toolkit getToolkit()
          获得此组件的工具包。
 Object getTreeLock()
          获得此组件用于 AWT 组件树和布局操作的锁定对象(拥有线程同步监视器的对象)。
 int getWidth()
          返回组件的当前宽度。
 int getX()
          返回组件原点的当前 x 坐标。
 int getY()
          返回组件原点的当前 y 坐标。
 boolean gotFocus(Event evt, Object what)
          已过时。 从 JDK version 1.1 开始,由 processFocusEvent(FocusEvent) 取代。
 boolean handleEvent(Event evt)
          已过时。 从 JDK version 1.1 开始,由 processEvent(AWTEvent) 取代。
 boolean hasFocus()
          如果此 Component 是焦点所有者,则返回 true
 void hide()
          已过时。 从 JDK version 1.1 开始,由 setVisible(boolean) 取代。
 boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h)
          图像已改变时重绘组件。
 boolean inside(int x, int y)
          已过时。 从 JDK version 1.1 开始,由 contains(int, int) 取代。
 void invalidate()
          使此组件无效。
 boolean isBackgroundSet()
          返回是否已为此组件显示地设置了背景色。
 boolean isCursorSet()
          返回是否已为此组件显示地设置了光标。
 boolean isDisplayable()
          确定此组件是否可以显示。
 boolean isDoubleBuffered()
          如果将此组件绘制到一个随后复制到屏幕上的屏幕外图像(“缓冲区”),则返回 true。
 boolean isEnabled()
          确定此组件是否已启用。
 boolean isFocusable()
          返回此 Component 是否可以获得焦点。
 boolean isFocusCycleRoot(Container container)
          返回指定的 Container 是否为此 Component 焦点遍历循环的焦点循环根。
 boolean isFocusOwner()
          如果此 Component 是焦点所有者,则返回 true
 boolean isFocusTraversable()
          已过时。 在 1.4 中,由 isFocusable() 取代。
 boolean isFontSet()
          返回是否已为此组件显示地设置了字体。
 boolean isForegroundSet()
          返回是否已为此组件显式地设置了前景色。
 boolean isLightweight()
          轻量组件没有本机工具包同位体。
 boolean isMaximumSizeSet()
          如果已将最大尺寸设置为非 null 值,则返回 true,否则返回 false。
 boolean isMinimumSizeSet()
          返回是否已用非 null 值调用了 setMinimumSize
 boolean isOpaque()
          如果组件是完全不透明的,则返回 true,默认返回 false。
 boolean isPreferredSizeSet()
          如果已将首选大小设置为非 null 值,则返回 true,否则返回 false。
 boolean isShowing()
          确定此组件是否在屏幕上显示。
 boolean isValid()
          确定组件是否有效。
 boolean isVisible()
          确定此组件在其父容器可见时是否应该可见。
 boolean keyDown(Event evt, int key)
          已过时。 从 JDK version 1.1 开始,由 processKeyEvent(KeyEvent) 取代。
 boolean keyUp(Event evt, int key)
          已过时。 从 JDK version 1.1 开始,由 processKeyEvent(KeyEvent) 取代。
 void layout()
          已过时。 从 JDK version 1.1 开始,由 doLayout() 取代。
 void list()
          将组件列表打印到标准系统输出流 System.out
 void list(PrintStream out)
          将组件列表打印到指定的输出流。
 void list(PrintStream out, int indent)
          将列表从指定的缩进开始打印到指定的输出流。
 void list(PrintWriter out)
          将列表打印到指定的 PrintWriter。
 void list(PrintWriter out, int indent)
          将列表从指定的缩进开始打印到指定的 PrintWriter。
 Component locate(int x, int y)
          已过时。 从 JDK version 1.1 开始,由 getComponentAt(int, int) 取代。
 Point location()
          已过时。 从 JDK version 1.1 开始,由 getLocation() 取代。
 boolean lostFocus(Event evt, Object what)
          已过时。 从 JDK version 1.1 开始,由 processFocusEvent(FocusEvent) 取代。
 Dimension minimumSize()
          已过时。 从 JDK version 1.1 开始,由 getMinimumSize() 取代。
 boolean mouseDown(Event evt, int x, int y)
          已过时。 从 JDK version 1.1 开始,由 processMouseEvent(MouseEvent) 取代。
 boolean mouseDrag(Event evt, int x, int y)
          已过时。 从 JDK version 1.1 开始,由 processMouseMotionEvent(MouseEvent) 取代。
 boolean mouseEnter(Event evt, int x, int y)
          已过时。 从 JDK version 1.1 开始,由 processMouseEvent(MouseEvent) 取代。
 boolean mouseExit(Event evt, int x, int y)
          已过时。 从 JDK version 1.1 开始,由 processMouseEvent(MouseEvent) 取代。
 boolean mouseMove(Event evt, int x, int y)
          已过时。 从 JDK version 1.1 开始,由 processMouseMotionEvent(MouseEvent) 取代。
 boolean mouseUp(Event evt, int x, int y)
          已过时。 从 JDK version 1.1 开始,由 processMouseEvent(MouseEvent) 取代。
 void move(int x, int y)
          已过时。 从 JDK version 1.1 开始,由 setLocation(int, int) 取代。
 void nextFocus()
          已过时。 从 JDK version 1.1 开始,由 transferFocus() 取代。
 void paint(Graphics g)
          绘制此组件。
 void paintAll(Graphics g)
          绘制此组件及其所有子组件。
protected  String paramString()
          返回此组件状态的字符串表示形式。
 boolean postEvent(Event e)
          已过时。 从 JDK version 1.1 开始,由 dispatchEvent(AWTEvent) 取代。
 Dimension preferredSize()
          已过时。 从 JDK version 1.1 开始,由 getPreferredSize() 取代。
 boolean prepareImage(Image image, ImageObserver observer)
          准备一幅在此组件上呈现的图像。
 boolean prepareImage(Image image, int width, int height, ImageObserver observer)
          以指定的宽度和高度准备一幅在在此组件上呈现的图像。
 void print(Graphics g)
          打印此组件。
 void printAll(Graphics g)
          打印此组件及其所有子组件。
protected  void processComponentEvent(ComponentEvent e)
          处理组件上发生的组件事件,方法是将其指派到任意已注册的 ComponentListener 对象。
protected  void processEvent(AWTEvent e)
          处理在组件上发生的事件。
protected  void processFocusEvent(FocusEvent e)
          处理组件上发生的焦点事件,方法是将其指派到任意已注册的 FocusListener 对象。
protected  void processHierarchyBoundsEvent(HierarchyEvent e)
          处理组件上发生的层次结构边界事件,方法是将其指派到任意已注册的 HierarchyBoundsListener 对象。
protected  void processHierarchyEvent(HierarchyEvent e)
          处理组件上发生的层次结构事件,方法是将其指派到任意已注册的 HierarchyListener 对象。
protected  void processInputMethodEvent(InputMethodEvent e)
          处理组件上发生的输入方法事件,方法是将其指派到任意已注册的 InputMethodListener 对象。
protected  void processKeyEvent(KeyEvent e)
          处理组件上发生的按键事件,方法是将其指派到任意已注册的 KeyListener 对象。
protected  void processMouseEvent(MouseEvent e)
          处理组件上发生的鼠标事件,方法是将其指派到任意已注册的 MouseListener 对象。
protected  void processMouseMotionEvent(MouseEvent e)
          处理组件上发生的鼠标移动事件,方法是将其指派到任意已注册的 MouseMotionListener 事件。
protected  void processMouseWheelEvent(MouseWheelEvent e)
          处理组件上发生的鼠标轮事件,方法是将其指派到任意已注册的 MouseWheelListener 对象。
 void remove(MenuComponent popup)
          从组件移除指定的弹出菜单。
 void removeComponentListener(ComponentListener l)
          移除指定的组件侦听器,不再接收此组件发出的组件事件。
 void removeFocusListener(FocusListener l)
          移除指定的焦点侦听器,不再接收此组件发出的焦点事件。
 void removeHierarchyBoundsListener(HierarchyBoundsListener l)
          移除指定的层次结构边界侦听器,不再接收此组件发出的层次结构边界事件如果参数所指定的侦听器尚未添加到此组件,则此方法不起作用,也不抛出异常。
 void removeHierarchyListener(HierarchyListener l)
          移除指定的层次结构侦听器,不再接收此组件发出的层次结构变化事件。
 void removeInputMethodListener(InputMethodListener l)
          移除指定的输入方法侦听器,不再接收此组件发出的输入方法事件。
 void removeKeyListener(KeyListener l)
          移除指定的按键侦听器,不再接收此组件发出的按键事件。
 void removeMouseListener(MouseListener l)
          移除指定的鼠标侦听器,不再接收此组件发出的鼠标事件。
 void removeMouseMotionListener(MouseMotionListener l)
          移除指定的鼠标移动侦听器,不再接收此组件发出的鼠标移动事件。
 void removeMouseWheelListener(MouseWheelListener l)
          移除指定的鼠标轮侦听器,不再接收此组件发出的鼠标轮事件。
 void removeNotify()
          通过销毁此 Component 的本机屏幕资源使其成为不可显示的。
 void removePropertyChangeListener(PropertyChangeListener listener)
          从侦听器列表移除一个 PropertyChangeListener。
 void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
          从指定属性的侦听器列表中移除一个 PropertyChangeListener
 void repaint()
          重绘此组件。
 void repaint(int x, int y, int width, int height)
          重绘组件的指定矩形区域。
 void repaint(long tm)
          重绘组件。
 void repaint(long tm, int x, int y, int width, int height)
          在 tm 毫秒内重绘组件的指定矩形区域。
 void requestFocus()
          请求此 Component 获得输入焦点,并且此 Component 的顶层祖先成为获得焦点的 Window。
protected  boolean requestFocus(boolean temporary)
          请求此 Component 获得输入焦点,并且此 Component 的顶层祖先成为获得焦点的 Window
 boolean requestFocusInWindow()
          如果此 Component 的顶层祖先已经是获得焦点的窗口,则请求此 Component 获得输入焦点。
protected  boolean requestFocusInWindow(boolean temporary)
          如果此 Component 的顶层祖先已经是获得焦点的 Window,则请求此 Component 获得输入焦点。
 void reshape(int x, int y, int width, int height)
          已过时。 从 JDK version 1.1 开始,由 setBounds(int, int, int, int) 取代。
 void resize(Dimension d)
          已过时。 从 JDK version 1.1 开始,由 setSize(Dimension) 取代。
 void resize(int width, int height)
          已过时。 从 JDK version 1.1 开始,由 setSize(int, int) 取代。
 void setBackground(Color c)
          设置组件的背景色。
 void setBounds(int x, int y, int width, int height)
          移动组件并调整其大小。
 void setBounds(Rectangle r)
          移动组件并调整其大小,使其符合新的有界矩形 r
 void setComponentOrientation(ComponentOrientation o)
          设置语言敏感的方向,用于排序此组件内的元素或文本。
 void setCursor(Cursor cursor)
          为指定的光标设置光标图像。
 void setDropTarget(DropTarget dt)
          将组件与 DropTarget 相关联。
 void setEnabled(boolean b)
          根据参数 b 的值启用或禁用此组件。
 void setFocusable(boolean focusable)
          将此 Component 的焦点状态设置为指定值。
 void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)
          为此 Component 的给定遍历操作设置焦点遍历键。
 void setFocusTraversalKeysEnabled(boolean focusTraversalKeysEnabled)
          设置是否为此 Component 启用焦点遍历键。
 void setFont(Font f)
          设置组件的字体。
 void setForeground(Color c)
          设置组件的前景色。
 void setIgnoreRepaint(boolean ignoreRepaint)
          设置是否应该忽略从操作系统接受的绘制消息。
 void setLocale(Locale l)
          设置组件的语言环境。
 void setLocation(int x, int y)
          将组件移到新位置。
 void setLocation(Point p)
          将组件移到新位置。
 void setMaximumSize(Dimension maximumSize)
          将组件的最大尺寸设置为常量值。
 void setMinimumSize(Dimension minimumSize)
          将组件的最小尺寸设置为常量值。
 void setName(String name)
          将组件的名称设置为指定的字符串。
 void setPreferredSize(Dimension preferredSize)
          将组件的首选大小设置为常量值。
 void setSize(Dimension d)
          调整组件的大小,使其宽度为 d.width,高度为 d.height
 void setSize(int width, int height)
          调整组件的大小,使其宽度为 width,高度为 height
 void setVisible(boolean b)
          根据参数 b 的值显示或隐藏此组件。
 void show()
          已过时。 从 JDK version 1.1 开始,由 setVisible(boolean) 取代。
 void show(boolean b)
          已过时。 从 JDK version 1.1 开始,由 setVisible(boolean) 取代。
 Dimension size()
          已过时。 从 JDK version 1.1 开始,由 getSize() 取代。
 String toString()
          返回此组件及其值的字符串表示形式。
 void transferFocus()
          将焦点转移到下一个组件,就好像此 Component 曾是焦点所有者。
 void transferFocusBackward()
          将焦点转移到前一个组件,就好像此 Component 曾是焦点所有者。
 void transferFocusUpCycle()
          将焦点向上转移一个焦点遍历循环。
 void update(Graphics g)
          更新组件。
 void validate()
          确保组件具有有效的布局。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

字段详细信息

TOP_ALIGNMENT

public static final float TOP_ALIGNMENT
getAlignmentY() 的易于使用的常量。指定组件顶部对齐方式。

另请参见:
getAlignmentY(), 常量字段值

CENTER_ALIGNMENT

public static final float CENTER_ALIGNMENT
getAlignmentYgetAlignmentX 的易于使用的常量。指定组件居中对齐的方式。

另请参见:
getAlignmentX(), getAlignmentY(), 常量字段值

BOTTOM_ALIGNMENT

public static final float BOTTOM_ALIGNMENT
getAlignmentY 的易于使用的常量。指定组件底部对齐的方式。

另请参见:
getAlignmentY(), 常量字段值

LEFT_ALIGNMENT

public static final float LEFT_ALIGNMENT
getAlignmentX 的易于使用的常量。指定组件左对齐的方式。

另请参见:
getAlignmentX(), 常量字段值

RIGHT_ALIGNMENT

public static final float RIGHT_ALIGNMENT
getAlignmentX 的易于使用的常量。指定组件右对齐的方式。

另请参见:
getAlignmentX(), 常量字段值
构造方法详细信息

Component

protected Component()
构造一个新组件。可以直接扩展 Component 类,以便创建不利用本机不透明窗口的轻量组件。轻量组件必须由组件树中较高处的本机容器所承载(例如由 Frame 对象承载)。

方法详细信息

getName

public String getName()
获得组件的名称。

返回:
组件的名称
从以下版本开始:
JDK1.1
另请参见:
setName(java.lang.String)

setName

public void setName(String name)
将组件的名称设置为指定的字符串。

参数:
name - 要成为组件名称的字符串。
从以下版本开始:
JDK1.1
另请参见:
getName()

getParent

public Container getParent()
获得此组件的父级。

返回:
此组件的父级容器
从以下版本开始:
JDK1.0

getPeer

@Deprecated
public java.awt.peer.ComponentPeer getPeer()
已过时。 从 JDK version 1.1 开始,程序不应直接操作同位体;由 boolean isDisplayable() 取代。


setDropTarget

public void setDropTarget(DropTarget dt)
将组件与 DropTarget 相关联。仅在已启用 Component 时才接收放置。

参数:
dt - DropTarget
另请参见:
isEnabled()

getDropTarget

public DropTarget getDropTarget()
获得与此 Component 相关的 DropTarget


getGraphicsConfiguration

public GraphicsConfiguration getGraphicsConfiguration()
获得与此 Component 相关的 GraphicsConfiguration。如果尚未给 Component 分配指定的 GraphicsConfiguration,则返回该 Component 对象顶层容器的 GraphicsConfiguration。如果已经创建了 Component 但尚未添加到 Container 中,则此方法返回 null

返回:
Component 使用的 GraphicsConfiguration,或者返回 null
从以下版本开始:
1.3

getTreeLock

public final Object getTreeLock()
获得此组件用于 AWT 组件树和布局操作的锁定对象(拥有线程同步监视器的对象)。

返回:
此组件的锁定对象

getToolkit

public Toolkit getToolkit()
获得此组件的工具包。注意,包含组件的框架控制该组件使用哪个工具包。因此,如果组件从一个框架移到另一个框架中,那么它所使用的工具包可能改变。

返回:
此组件的工具包
从以下版本开始:
JDK1.0

isValid

public boolean isValid()
确定组件是否有效。当组件在其父级容器内正确确定了大小和位置,并且其所有子组件也是有效的,则该组件是有效的。为了确定同位体的大小要求,组件首次显示在屏幕上时是无效的。 完全实现父级容器时,其所有组件将是有效的。

返回:
如果组件有效,则返回 true;否则返回 false
从以下版本开始:
JDK1.0
另请参见:
validate(), invalidate()

isDisplayable

public boolean isDisplayable()
确定此组件是否可以显示。当组件连接到一个本机屏幕资源时是可以显示的。

将组件添加到一个可显示的包含层次结构时,或者其包含层次结构变成可显示时,该组件才成为可显示的组件。当包含层次结构的祖先窗口被打包或变为可见时,它才成为可显示的。

从可显示的包含层次结构中移除某个组件,或者该组件的包含层次结构变成不可显示时,该组件就成为不可显示的组件。当包含层次结构的祖先窗口被移除时,它才变成不可显示的。

返回:
如果组件是可显示的,则返回 true;否则返回 false
从以下版本开始:
1.2
另请参见:
Container.add(Component), Window.pack(), Window.show(), Container.remove(Component), Window.dispose()

isVisible

public boolean isVisible()
确定此组件在其父容器可见时是否应该可见。组件初始是可见的,诸如 Frame 对象等顶层组件除外。

返回:
如果组件是可见的,则返回 true;否则返回 false
从以下版本开始:
JDK1.0
另请参见:
setVisible(boolean)

getMousePosition

public Point getMousePosition()
                       throws HeadlessException
如果此 Component 正好位于鼠标指针下,则返回鼠标指针在 Component 的坐标空间中的位置;否则返回 null。如果屏幕上未显示 Component,那么即使鼠标指针位于将显示 Component 的区域之上,此方法也只是返回 null。如果 Component 被其他 Component 或本机窗口所部分或完全遮掩,则仅在鼠标指针位于 Component 未被遮掩的部分之上时,此方法才返回非 null 值。

对于 Container,如果鼠标位于 Container 本身之上或位于其后代之上时,则此方法返回非 null 值。如果需要将子容器排除在外,请使用 Container.getMousePosition(boolean)

有时鼠标的准确坐标并不重要,惟一重要的是指定的 Component 是否位于鼠标指针下。如果此方法的返回值为 null,则鼠标指针不位于 Component 的上边。

返回:
鼠标相对与此 Component 的坐标,或者返回 null。
抛出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
1.5
另请参见:
isShowing(), Container.getMousePosition(boolean)

isShowing

public boolean isShowing()
确定此组件是否在屏幕上显示。这意味着组件必须是可见的,并且必须位于一个可见并且正在显示的容器中。

返回:
如果正在显示组件,则返回 true;否则返回 false
从以下版本开始:
JDK1.0
另请参见:
setVisible(boolean)

isEnabled

public boolean isEnabled()
确定此组件是否已启用。已启用的组件可以响应用户输入并生成事件。默认情况下,组件最初是启用的。调用组件的 setEnabled 方法可以启用或禁用组件。

返回:
如果组件已启用,则返回 true;否则返回 false
从以下版本开始:
JDK1.0
另请参见:
setEnabled(boolean)

setEnabled

public void setEnabled(boolean b)
根据参数 b 的值启用或禁用此组件。已启用的组件可以响应用户输入并生成事件。默认情况下,组件最初是启用的。

注:禁用轻量组件不会阻止其接收 MouseEvents。

参数:
b - 如果为 true,则启用此组件;否则禁用此组件
从以下版本开始:
JDK1.1
另请参见:
isEnabled(), isLightweight()

enable

@Deprecated
public void enable()
已过时。 从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。


enable

@Deprecated
public void enable(boolean b)
已过时。 从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。


disable

@Deprecated
public void disable()
已过时。 从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。


isDoubleBuffered

public boolean isDoubleBuffered()
如果将此组件绘制到一个随后复制到屏幕上的屏幕外图像(“缓冲区”),则返回 true。支持双缓冲的组件子类应该重写此方法,以便在启用双缓冲时返回 true。

返回:
默认返回 false

enableInputMethods

public void enableInputMethods(boolean enable)
启用或禁用此方法的输入方法支持。如果启用输入方法支持并且组件也处理按键事件,则将传入的事件提供给当前的输入方法,并且如果输入方法没有使用它们,则仅由组件处理或分派给其侦听器。默认情况下启用输入方法支持。

参数:
enable - true 表示启用,false 表示禁用
从以下版本开始:
1.2
另请参见:
processKeyEvent(java.awt.event.KeyEvent)

setVisible

public void setVisible(boolean b)
根据参数 b 的值显示或隐藏此组件。

参数:
b - 如果为 true,则显示此组件;否则隐藏此组件
从以下版本开始:
JDK1.1
另请参见:
isVisible()

show

@Deprecated
public void show()
已过时。 从 JDK version 1.1 开始,由 setVisible(boolean) 取代。


show

@Deprecated
public void show(boolean b)
已过时。 从 JDK version 1.1 开始,由 setVisible(boolean) 取代。


hide

@Deprecated
public void hide()
已过时。 从 JDK version 1.1 开始,由 setVisible(boolean) 取代。


getForeground

public Color getForeground()
获得组件的前景色。

返回:
组件的前景色;如果此组件没有前景色,则返回其父级的前景色
从以下版本开始:
JDK1.0
另请参见:
setForeground(java.awt.Color)

setForeground

public void setForeground(Color c)
设置组件的前景色。

参数:
c - 要成为此组件前景色的颜色;如果此参数为 null,则此组件继承其父级的前景色
从以下版本开始:
JDK1.0
另请参见:
getForeground()

isForegroundSet

public boolean isForegroundSet()
返回是否已为此组件显式地设置了前景色。如果此方法返回 false,则此组件继承了其祖先的前景色。

返回:
如果已为此组件显示地设置了前景色,则返回 true;否则返回 false
从以下版本开始:
1.4

getBackground

public Color getBackground()
获得组件的背景色。

返回:
组件的背景色;如果此组件没有背景色,则返回其父级的背景色
从以下版本开始:
JDK1.0
另请参见:
setBackground(java.awt.Color)

setBackground

public void setBackground(Color c)
设置组件的背景色。

背景色对每个组件的影响各不相同,并且部分受背景色影响的组件在不同的操作系统之间可能有所不同。

参数:
c - 要成为此组件背景色的颜色;如果此参数为 null,则此组件继承其父级的背景色
从以下版本开始:
JDK1.0
另请参见:
getBackground()

isBackgroundSet

public boolean isBackgroundSet()
返回是否已为此组件显示地设置了背景色。如果此方法返回 false,则此组件继承了其祖先的背景色。

返回:
如果已为此组件显示地设置了背景色,则返回 true;否则返回 false
从以下版本开始:
1.4

getFont

public Font getFont()
获得组件的字体。

指定者:
接口 MenuContainer 中的 getFont
返回:
组件的字体;如果此组件未设置字体,则返回其父级的字体
从以下版本开始:
JDK1.0
另请参见:
setFont(java.awt.Font)

setFont

public void setFont(Font f)
设置组件的字体。

参数:
f - 要成为此组件字体的字体;如果此参数为 null,则此组件继承其父级的字体
从以下版本开始:
JDK1.0
另请参见:
getFont()

isFontSet

public boolean isFontSet()
返回是否已为此组件显示地设置了字体。如果此方法返回 false,则此组件继承了其祖先的字体。

返回:
如果已为此组件显示地设置了字体,则返回 true;否则返回 false
从以下版本开始:
1.4

getLocale

public Locale getLocale()
获得组件的语言环境。

返回:
组件的语言环境;如果此组件没有语言环境,则返回其父级的语言环境
抛出:
IllegalComponentStateException - 如果 Component 没有其自己的语言环境,并且尚未添加到包含层次结构中(如果添加到包含层次结构中就可以从其父级确定语言环境)
从以下版本开始:
JDK1.1
另请参见:
setLocale(java.util.Locale)

setLocale

public void setLocale(Locale l)
设置组件的语言环境。这是一个 bound 属性。

参数:
l - 要成为此组件语言环境的语言环境
从以下版本开始:
JDK1.1
另请参见:
getLocale()

getColorModel

public ColorModel getColorModel()
获得用于在输出设备上显示组件的 ColorModel 实例。

返回:
组件使用的颜色模型
从以下版本开始:
JDK1.0
另请参见:
ColorModel, ComponentPeer.getColorModel(), Toolkit.getColorModel()

getLocation

public Point getLocation()
获得组件的位置,形式是指定组件左上角的一个点。该位置是相对于父级坐标空间的。

由于本机事件处理的异步特性,所以此方法可能返回过时的值(例如,在快速连续调用 setLocation() 后)。为此,获得组件位置的建议方法是在 java.awt.event.ComponentListener.componentMoved() 内,在操作系统结束组件移动后调用它。

返回:
一个 Point 实例,表示在父组件坐标空间中组件边界的左上角
从以下版本开始:
JDK1.1
另请参见:
setLocation(int, int), getLocationOnScreen()

getLocationOnScreen

public Point getLocationOnScreen()
获得组件的位置,形式是一个指定屏幕坐标空间中组件左上角的一个点。

返回:
一个 Point 实例,表示在屏幕坐标空间中组件边界的左上角
抛出:
IllegalComponentStateException - 如果屏幕上未显示该组件
另请参见:
setLocation(int, int), getLocation()

location

@Deprecated
public Point location()
已过时。 从 JDK version 1.1 开始,由 getLocation() 取代。


setLocation

public void setLocation(int x,
                        int y)
将组件移到新位置。通过此组件父级坐标空间中的 xy 参数来指定新位置的左上角。

参数:
x - 父级坐标空间中新位置左上角的 x 坐标
y - 父级坐标空间中新位置左上角的 y 坐标
从以下版本开始:
JDK1.1
另请参见:
getLocation(), setBounds(int, int, int, int)

move

@Deprecated
public void move(int x,
                            int y)
已过时。 从 JDK version 1.1 开始,由 setLocation(int, int) 取代。


setLocation

public void setLocation(Point p)
将组件移到新位置。通过点 p 来指定新位置的左上角。在父级的坐标空间中给出点 p

参数:
p - 定义新位置左上角的点,在此组件的父级坐标空间中给出
从以下版本开始:
JDK1.1
另请参见:
getLocation(), setBounds(int, int, int, int)

getSize

public Dimension getSize()
Dimension 对象的形式返回组件的大小。Dimension 对象的 height 字段包含此组件的高度,而 Dimension 对象的 width 字段则包含此组件的宽度。

返回:
表示组件大小的 Dimension 对象
从以下版本开始:
JDK1.1
另请参见:
setSize(int, int)

size

@Deprecated
public Dimension size()
已过时。 从 JDK version 1.1 开始,由 getSize() 取代。


setSize

public void setSize(int width,
                    int height)
调整组件的大小,使其宽度为 width,高度为 height

参数:
width - 组件的新宽度,单位是像素
height - 组件的新高度,单位是像素
从以下版本开始:
JDK1.1
另请参见:
getSize(), setBounds(int, int, int, int)

resize

@Deprecated
public void resize(int width,
                              int height)
已过时。 从 JDK version 1.1 开始,由 setSize(int, int) 取代。


setSize

public void setSize(Dimension d)
调整组件的大小,使其宽度为 d.width,高度为 d.height

参数:
d - 指定组件新大小的尺寸
从以下版本开始:
JDK1.1
另请参见:
setSize(int, int), setBounds(int, int, int, int)

resize

@Deprecated
public void resize(Dimension d)
已过时。 从 JDK version 1.1 开始,由 setSize(Dimension) 取代。


getBounds

public Rectangle getBounds()
Rectangle 对象的形式获得组件的边界。边界指定此组件的宽度、高度和相对于其父级的位置。

返回:
表示组件边界的 Rectangle
另请参见:
setBounds(int, int, int, int), getLocation(), getSize()

bounds

@Deprecated
public Rectangle bounds()
已过时。 从 JDK version 1.1 开始,由 getBounds() 取代。


setBounds

public void setBounds(int x,
                      int y,
                      int width,
                      int height)
移动组件并调整其大小。由 xy 指定左上角的新位置,由 widthheight 指定新的大小。

参数:
x - 组件的新 x 坐标
y - 组件的新 y 坐标
width - 组件的新 width
height - 组件的新 height
从以下版本开始:
JDK1.1
另请参见:
getBounds(), setLocation(int, int), setLocation(Point), setSize(int, int), setSize(Dimension)

reshape

@Deprecated
public void reshape(int x,
                               int y,
                               int width,
                               int height)
已过时。 从 JDK version 1.1 开始,由 setBounds(int, int, int, int) 取代。


setBounds

public void setBounds(Rectangle r)
移动组件并调整其大小,使其符合新的有界矩形 r。由 r.xr.y 指定组件的新位置,由 r.widthr.height 指定组件的新大小

参数:
r - 此组件的新的有界矩形
从以下版本开始:
JDK1.1
另请参见:
getBounds(), setLocation(int, int), setLocation(Point), setSize(int, int), setSize(Dimension)

getX

public int getX()
返回组件原点的当前 x 坐标。此方法优于 component.getBounds().xcomponent.getLocation().x 方法,因为它不会导致任何的堆分配。

返回:
组件原点的当前 x 坐标
从以下版本开始:
1.2

getY

public int getY()
返回组件原点的当前 y 坐标。此方法优于 component.getBounds().ycomponent.getLocation().y 方法,因为它不会导致任何的堆分配。

返回:
组件原点的当前 y 坐标
从以下版本开始:
1.2

getWidth

public int getWidth()
返回组件的当前宽度。此方法优于 component.getBounds().widthcomponent.getLocation().width 方法,因为它不会导致任何的堆分配。

返回:
组件的当前宽度
从以下版本开始:
1.2

getHeight

public int getHeight()
返回组件的当前高度。此方法优于 component.getBounds().heightcomponent.getSize().height 方法,因为它不会导致任何的堆分配。

返回:
组件的当前高度
从以下版本开始:
1.2

getBounds

public Rectangle getBounds(Rectangle rv)
将组件的边界存储到“返回值”rv 中并返回 rv。如果 rv 为 null,则分配一个新的 Rectangle。如果调用方想要避免在堆上分配一个新的 Rectangle 对象时,此版本的 getBounds 是很有用的。

参数:
rv - 返回值,修改为组件的边界
返回:
rv

getSize

public Dimension getSize(Dimension rv)
将组件的宽度/高度存储到“返回值”rv 中并返回 rv。如果 rv 为 null,则分配一个新的 Dimension 对象。如果调用方想要避免在堆上分配一个新的 Dimension 对象时,此版本的 getSize 是很有用的。

参数:
rv - 返回值,被修改为组件的大小
返回:
rv

getLocation

public Point getLocation(Point rv)
将组件的 x,y 原点存储到“返回值” rv 中并返回 rv。如果 rv 为 null,则分配一个新的 Point。如果调用方想要避免在堆上分配一个新的 Point 对象,则此版本的 getLocation 是很有用的。

参数:
rv - 返回值,被修改为组件的位置
返回:
rv

isOpaque

public boolean isOpaque()
如果组件是完全不透明的,则返回 true,默认返回 false。

不透明组件将每个像素绘制在其矩形区域内。透明的组件则仅绘制其某些像素,允许其下面的像素“透视出来”。因此,没有完全绘制其像素的组件则提供了一定程度的透明度。只有轻量组件可以是透明的。

保证总是完全绘制其内容的子类应该重写此方法并返回 true。所有“重量”AWT 组件都是不透明的。

返回:
如果组件是完全不透明的,则返回 true
从以下版本开始:
1.2
另请参见:
isLightweight()

isLightweight

public boolean isLightweight()
轻量组件没有本机工具包同位体。除了在此包中定义的、像 ButtonScrollbar 那些组件以外,ComponentContainer 的子类是轻量组件。所有 Swing 组件是轻量组件。

如果组件是不可显示的,那么由于无法确定不可显示的组件是轻量还是重量的,所以此方法总是返回 false

返回:
如果组件有一个轻量同位体,则返回 true;如果有一个本机同位体或没有同位体,则返回 false
从以下版本开始:
1.2
另请参见:
isDisplayable()

setPreferredSize

public void setPreferredSize(Dimension preferredSize)
将组件的首选大小设置为常量值。对 getPreferredSize 的后续调用总是返回此值。将首选大小设置为 null 可还原默认的行为。

参数:
preferredSize - 新的首选大小,或者为 null
从以下版本开始:
1.5
另请参见:
getPreferredSize(), isPreferredSizeSet()

isPreferredSizeSet

public boolean isPreferredSizeSet()
如果已将首选大小设置为非 null 值,则返回 true,否则返回 false。

返回:
如果已经用非 null 值调用了 setPreferredSize,则返回 true。
从以下版本开始:
1.5

getPreferredSize

public Dimension getPreferredSize()
获得组件的首选大小。

返回:
一个表示组件首选大小的 dimension 对象
另请参见:
getMinimumSize(), LayoutManager

preferredSize

@Deprecated
public Dimension preferredSize()
已过时。 从 JDK version 1.1 开始,由 getPreferredSize() 取代。


setMinimumSize

public void setMinimumSize(Dimension minimumSize)
将组件的最小尺寸设置为常量值。对 getMinimumSize 的后续调用总是返回此值。将最小尺寸设置为 null 可还原默认的行为。

参数:
minimumSize - 组件新的最小尺寸
从以下版本开始:
1.5
另请参见:
getMinimumSize(), isMinimumSizeSet()

isMinimumSizeSet

public boolean isMinimumSizeSet()
返回是否已用非 null 值调用了 setMinimumSize

返回:
如果已经用非 null 值调用了 setMinimumSize,则返回 true。
从以下版本开始:
1.5

getMinimumSize

public Dimension getMinimumSize()
获得组件的最小尺寸。

返回:
一个表示组件最小尺寸的 dimension 对象
另请参见:
getPreferredSize(), LayoutManager

minimumSize

@Deprecated
public Dimension minimumSize()
已过时。 从 JDK version 1.1 开始,由 getMinimumSize() 取代。


setMaximumSize

public void setMaximumSize(Dimension maximumSize)
将组件的最大尺寸设置为常量值。对 getMaximumSize 的后续调用总是返回此值。将最大尺寸设置为 null 可还原默认的行为。

参数:
maximumSize - 一个包含所需最大允许大小的 Dimension
从以下版本开始:
1.5
另请参见:
getMaximumSize(), isMaximumSizeSet()

isMaximumSizeSet

public boolean isMaximumSizeSet()
如果已将最大尺寸设置为非 null 值,则返回 true,否则返回 false。

返回:
如果 maximumSize 是非 null 值,则返回 true,否则返回 false
从以下版本开始:
1.5

getMaximumSize

public Dimension getMaximumSize()
获得组件的最大尺寸。

返回:
一个表示组件最大尺寸的 dimension 对象
另请参见:
getMinimumSize(), getPreferredSize(), LayoutManager

getAlignmentX

public float getAlignmentX()
返回 x 轴的对齐方式。指定组件相对于其他组件的对齐方式。值应该是 0 到 1 之间的数,其中 0 代表与原点对齐,1 代表距离原点最远处对齐,0.5 代表居中等。


getAlignmentY

public float getAlignmentY()
返回 y 轴的对齐方式。指定组件相对于其他组件的对齐方式。值应该是 0 到 1 之间的数,其中 0 代表与原点对齐,1 代表距离原点最远处对齐,0.5 代表居中等。


doLayout

public void doLayout()
提示布局管理器布局此组件。通常在验证组件(更明确地说是容器)时调用。

另请参见:
validate(), LayoutManager

layout

@Deprecated
public void layout()
已过时。 从 JDK version 1.1 开始,由 doLayout() 取代。


validate

public void validate()
确保组件具有有效的布局。此类主要适用于在 Container 实例上进行操作。

从以下版本开始:
JDK1.0
另请参见:
invalidate(), doLayout(), LayoutManager, Container.validate()

invalidate

public void invalidate()
使此组件无效。此组件及其所有父组件都标记为需要进行布局。此方法经常被调用,所以需要其快速执行。

从以下版本开始:
JDK1.0
另请参见:
validate(), doLayout(), LayoutManager

getGraphics

public Graphics getGraphics()
为组件创建一个图形上下文。如果组件当前是不可显示的,则此方法返回 null

返回:
组件的图形上下文,如果其没有,则返回 null
从以下版本开始:
JDK1.0
另请参见:
paint(java.awt.Graphics)

getFontMetrics

public FontMetrics getFontMetrics(Font font)
获得指定字体的字体规格。

参数:
font - 要获取其字体规格的字体
返回:
font 的字体规格
从以下版本开始:
JDK1.0
另请参见:
getFont(), getPeer(), ComponentPeer.getFontMetrics(Font), Toolkit.getFontMetrics(Font)

setCursor

public void setCursor(Cursor cursor)
为指定的光标设置光标图像。当此组件的 contains 方法为当前的光标位置返回 ture,并且此组件是可见的、可显示的并且已启用的,则显示此光标图像。设置 Container 的光标会导致在该容器的所有子组件内显示该光标,那些具有非 null 的光标除外。

参数:
cursor - Cursor 类定义的常量之一;如果此参数为 null,则此组件继承其父级的光标
从以下版本开始:
JDK1.1
另请参见:
isEnabled(), isShowing(), getCursor(), contains(int, int), Toolkit.createCustomCursor(java.awt.Image, java.awt.Point, java.lang.String), Cursor

getCursor

public Cursor getCursor()
获得组件中的光标集合。如果组件没有光标集合,则返回其父级的光标。如果整个层次结构中都没有设置光标,则返回 Cursor.DEFAULT_CURSOR

从以下版本开始:
JDK1.1
另请参见:
setCursor(java.awt.Cursor)

isCursorSet

public boolean isCursorSet()
返回是否已为此组件显示地设置了光标。如果此方法返回 false,则此组件继承了其祖先的光标。

返回:
如果已为此组件显示地设置了光标,则返回 true;否则返回 false
从以下版本开始:
1.4

paint

public void paint(Graphics g)
绘制此组件。

应该绘制组件的内容时调用此方法;例如首次显示组件或者组件已损坏并需要修复时。Graphics 参数中的矩形框设置为需要绘制的区域。重写此方法的 Component 子类不需要调用 super.paint(g)

出于性能的考虑,首次显示宽度或高度为 0 的 Component 时认为它不需要进行绘制,并且也不需要修复。

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

参数:
g - 用于绘制的图像上下文
从以下版本开始:
JDK1.0
另请参见:
update(java.awt.Graphics)

update

public void update(Graphics g)
更新组件。

如果此组件不是轻量组件,则为了响应对 repaint 的调用,AWT 调用 update 方法。可以假定未清除背景。

Componentupdate 方法调用此组件的 paint 方法来重绘此组件。为响应对 repaint 的调用而需要其他工作的子类通常重写此方法。重写此方法的 Component 子类应该调用 super.update(g),或者直接从其 update 方法中调用 paint(g)

图形上下文的原点,即它的(00)坐标点是此组件的左上角。图形上下文的裁剪区域是此组件的边界矩形。

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

参数:
g - 用于更新的指定上下文
从以下版本开始:
JDK1.0
另请参见:
paint(java.awt.Graphics), repaint()

paintAll

public void paintAll(Graphics g)
绘制此组件及其所有子组件。

图形上下文的原点,即它的(00)坐标点是此组件的左上角。图形上下文的裁剪区域是此组件的边界矩形。

参数:
g - 用于绘制的图形上下文
从以下版本开始:
JDK1.0
另请参见:
paint(java.awt.Graphics)

repaint

public void repaint()
重绘此组件。

如果此组件是轻量组件,则此方法会尽快调用此组件的 paint 方法。否则此方法会尽快调用此组件的 update 方法。

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

从以下版本开始:
JDK1.0
另请参见:
update(Graphics)

repaint

public void repaint(long tm)
重绘组件。如果此组件是轻量组件,则在 tm 毫秒内调用 paint

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

参数:
tm - 更新前等待的最长时间(以毫秒为单位)
从以下版本开始:
JDK1.0
另请参见:
paint(java.awt.Graphics), update(Graphics)

repaint

public void repaint(int x,
                    int y,
                    int width,
                    int height)
重绘组件的指定矩形区域。

如果此组件是轻量组件,则此方法会尽快调用此组件的 paint 方法。否则此方法会尽快调用此组件的 update 方法。

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

参数:
x - x 坐标
y - y 坐标
width - 宽度
height - 高度
从以下版本开始:
JDK1.0
另请参见:
update(Graphics)

repaint

public void repaint(long tm,
                    int x,
                    int y,
                    int width,
                    int height)
tm 毫秒内重绘组件的指定矩形区域。

如果此组件是轻量组件,则此方法调用此组件的 paint 方法。否则此方法调用此组件的 update 方法。

:有关 AWT 和 Swing 所用绘制机制的更多信息,包括如何编写最高效的绘制代码的信息,请参阅 Painting in AWT and Swing

参数:
tm - 更新前等待的最长时间(以毫秒为单位)
x - x 坐标
y - y 坐标
width - 宽度
height - 高度
从以下版本开始:
JDK1.0
另请参见:
update(Graphics)

print

public void print(Graphics g)
打印此组件。对于打印前必须进行特殊处理或打印内容不同于绘制内容的组件,应用程序应该重写此方法。

此方法的默认实现调用 paint 方法。

图形上下文的原点,即它的(00)坐标点是此组件的左上角。图形上下文的裁剪区域是此组件的边界矩形。

参数:
g - 用于绘制的图形上下文
从以下版本开始:
JDK1.0
另请参见:
paint(Graphics)

printAll

public void printAll(Graphics g)
打印此组件及其所有子组件。

图形上下文的原点,即它的(00)坐标点是此组件的左上角。图形上下文的裁剪区域是此组件的边界矩形。

参数:
g - 用于打印的指定上下文
从以下版本开始:
JDK1.0
另请参见:
print(Graphics)

imageUpdate

public boolean imageUpdate(Image img,
                           int infoflags,
                           int x,
                           int y,
                           int w,
                           int h)
图像已改变时重绘组件。当有关图像的更多信息可用时调用 ImageObserverimageUpdate 方法,该图像是以前使用诸如 GraphicsdrawImage 方法等此类异步例程请求的。有关此方法及其参数的更多信息,请参阅 imageUpdate 的定义。

随着有更多的可用图像位,ComponentimageUpdate 方法在组件上逐渐绘制图像。

如果系统属性 awt.image.incrementaldraw