- java.lang.Object
-
- java.awt.Component
-
- java.awt.Checkbox
-
- All Implemented Interfaces:
-
ImageObserver
,ItemSelectable
,MenuContainer
,Serializable
,Accessible
public class Checkbox extends Component implements ItemSelectable, Accessible
复选框是可以处于“开”(true
)或“关”(false
)状态的图形组件。 单击复选框将其状态从“开”更改为“关”,或从“关”更改为“开”。以下代码示例在网格布局中创建一组复选框:
setLayout(new GridLayout(3, 1)); add(new Checkbox("one", null, true)); add(new Checkbox("two")); add(new Checkbox("three"));
此图像描述了由此代码示例创建的复选框和网格布局:
标有
one
的按钮处于“开”状态,其他两个处于“关”状态。 在这个使用GridLayout
类的示例中,三个复选框的状态是独立设置的。或者,使用
CheckboxGroup
类,可以在单个对象的控制下将多个复选框分组在一起。 在复选框组中,在任何给定时间,最多只能有一个按钮处于“开”状态。 单击一个复选框可将其打开,强制打开“关闭”状态的同一组中的任何其他复选框。- 从以下版本开始:
- 1.0
- 另请参见:
-
GridLayout
,CheckboxGroup
, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 protected class
Checkbox.AccessibleAWTCheckbox
该类为Checkbox
类实现可访问性支持。-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
构造方法摘要
构造方法 Constructor 描述 Checkbox()
为其标签创建一个带有空字符串的复选框。Checkbox(String label)
创建一个带有指定标签的复选框。Checkbox(String label, boolean state)
创建一个带有指定标签的复选框,并设置指定的状态。Checkbox(String label, boolean state, CheckboxGroup group)
构造具有指定标签的复选框,设置为指定的状态,并在指定的复选框组中。Checkbox(String label, CheckboxGroup group, boolean state)
在指定的复选框组中创建带有指定标签的复选框,并设置为指定的状态。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
addItemListener(ItemListener l)
添加指定的项目侦听器以从此复选框接收项目事件。void
addNotify()
创建复选框的对等体。AccessibleContext
getAccessibleContext()
获取与此复选框相关联的AccessibleContext。CheckboxGroup
getCheckboxGroup()
确定此复选框的组。ItemListener[]
getItemListeners()
返回在此复选框上注册的所有项目侦听器的数组。String
getLabel()
获取此复选框的标签。<T extends EventListener>
T[]getListeners(Class<T> listenerType)
返回此Checkbox
当前注册为FooListener
的所有对象的数组。Object[]
getSelectedObjects()
返回一个包含复选框标签的数组(长度1),如果未选中该复选框,则返回null。boolean
getState()
确定此复选框是否处于“开”或“关”状态。protected String
paramString()
返回表示Checkbox
状态的字符串。protected void
processEvent(AWTEvent e)
处理此复选框上的事件。protected void
processItemEvent(ItemEvent e)
通过将此复选框发送到任何已注册的ItemListener
对象来处理在此复选框上发生的项目事件。void
removeItemListener(ItemListener l)
删除指定的项目监听器,以使项目监听器不再从此复选框接收项目事件。void
setCheckboxGroup(CheckboxGroup g)
将此复选框的组设置为指定的复选框组。void
setLabel(String label)
将此复选框的标签设置为字符串参数。void
setState(boolean state)
将此复选框的状态设置为指定的状态。-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate
-
-
-
-
构造方法详细信息
-
Checkbox
public Checkbox() throws HeadlessException
为其标签创建一个带有空字符串的复选框。 此复选框的状态设置为“关闭”,它不是任何复选框组的一部分。- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()返回true - 另请参见:
-
GraphicsEnvironment.isHeadless()
-
Checkbox
public Checkbox(String label) throws HeadlessException
创建一个带有指定标签的复选框。 此复选框的状态设置为“关闭”,它不是任何复选框组的一部分。- 参数
-
label
- 此复选框的字符串标签,或无标签的null
。 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
- 另请参见:
-
GraphicsEnvironment.isHeadless()
-
Checkbox
public Checkbox(String label, boolean state) throws HeadlessException
创建一个带有指定标签的复选框,并设置指定的状态。 该复选框不是任何复选框组的一部分。- 参数
-
label
- 此复选框的字符串标签,或无标签的null
-
state
- 此复选框的初始状态 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
- 另请参见:
-
GraphicsEnvironment.isHeadless()
-
Checkbox
public Checkbox(String label, boolean state, CheckboxGroup group) throws HeadlessException
构造具有指定标签的复选框,设置为指定的状态,并在指定的复选框组中。- 参数
-
label
- 此复选框的字符串标签,或无标签的null
。 -
state
- 此复选框的初始状态。 -
group
- 此复选框的复选框组,或无组的null
。 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
- 从以下版本开始:
- 1.1
- 另请参见:
-
GraphicsEnvironment.isHeadless()
-
Checkbox
public Checkbox(String label, CheckboxGroup group, boolean state) throws HeadlessException
在指定的复选框组中创建带有指定标签的复选框,并设置为指定的状态。- 参数
-
label
- 此复选框的字符串标签,或无标签的null
。 -
group
- 此复选框的复选框组,或无组的null
。 -
state
- 此复选框的初始状态。 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
- 从以下版本开始:
- 1.1
- 另请参见:
-
GraphicsEnvironment.isHeadless()
-
-
方法详细信息
-
addNotify
public void addNotify()
创建复选框的对等体。 对等体允许您更改复选框的外观,而不更改其功能。- 重写:
-
addNotify
在Component
- 另请参见:
-
Component.getToolkit()
-
getLabel
public String getLabel()
获取此复选框的标签。- 结果
-
该复选框的标签,或
null
如果此复选框没有标签。 - 另请参见:
-
setLabel(String)
-
setLabel
public void setLabel(String label)
将此复选框的标签设置为字符串参数。- 参数
-
label
- 要设置为新标签的字符串,或无标签的null
。 - 另请参见:
-
getLabel()
-
getState
public boolean getState()
确定此复选框是否处于“开”或“关”状态。 布尔值true
表示“开”状态,false
表示“关”状态。- 结果
- 该复选框的状态为布尔值
- 另请参见:
-
setState(boolean)
-
setState
public void setState(boolean state)
将此复选框的状态设置为指定的状态。 布尔值true
表示“开”状态,false
表示“关”状态。请注意,此方法主要用于初始化复选框的状态。 以编程方式设置复选框的状态不会触发
ItemEvent
。 触发ItemEvent
的唯一方法是通过用户交互。- 参数
-
state
- 复选框的布尔状态 - 另请参见:
-
getState()
-
getSelectedObjects
public Object[] getSelectedObjects()
返回一个包含复选框标签的数组(长度1),如果未选中该复选框,则返回null。- Specified by:
-
getSelectedObjects
在接口ItemSelectable
- 结果
-
所选对象的列表,或
null
- 另请参见:
-
ItemSelectable
-
getCheckboxGroup
public CheckboxGroup getCheckboxGroup()
确定此复选框的组。- 结果
-
此复选框的组,或
null
如果复选框不是复选框组的一部分。 - 另请参见:
-
setCheckboxGroup(CheckboxGroup)
-
setCheckboxGroup
public void setCheckboxGroup(CheckboxGroup g)
将此复选框的组设置为指定的复选框组。 如果此复选框已在不同的复选框组中,则首先从该组中取出。如果此复选框的状态为
true
,并且新组已选中复选框,则此复选框的状态将更改为false
。 如果此复选框的状态为true
,并且新组未选中复选框,该复选框将成为新组的选中复选框,其状态为true
。- 参数
-
g
- 新的复选框组,或null
从任何复选框组中删除此复选框 - 另请参见:
-
getCheckboxGroup()
-
addItemListener
public void addItemListener(ItemListener l)
添加指定的项目侦听器以从此复选框接收项目事件。 项目事件响应于用户输入发送给侦听器,但不响应对setState()的调用。 如果l为空,则不会抛出任何异常,也不会执行任何操作。有关AWT线程模型的详细信息,请参阅AWT Threading Issues 。
- Specified by:
-
addItemListener
在接口ItemSelectable
- 参数
-
l
- 项目监听器 - 从以下版本开始:
- 1.1
- 另请参见:
-
removeItemListener(java.awt.event.ItemListener)
,getItemListeners()
,setState(boolean)
,ItemEvent
,ItemListener
-
removeItemListener
public void removeItemListener(ItemListener l)
删除指定的项目监听器,以使项目监听器不再从此复选框接收项目事件。 如果l为空,则不会抛出任何异常,也不会执行任何操作。有关AWT线程模型的详细信息,请参阅AWT Threading Issues 。
- Specified by:
-
removeItemListener
在接口ItemSelectable
- 参数
-
l
- 项目监听器 - 从以下版本开始:
- 1.1
- 另请参见:
-
addItemListener(java.awt.event.ItemListener)
,getItemListeners()
,ItemEvent
,ItemListener
-
getItemListeners
public ItemListener[] getItemListeners()
返回在此复选框上注册的所有项目侦听器的数组。- 结果
-
所有这个复选框的
ItemListener
s或一个空数组,如果没有项目监听器当前注册 - 从以下版本开始:
- 1.4
- 另请参见:
-
addItemListener(java.awt.event.ItemListener)
,removeItemListener(java.awt.event.ItemListener)
,ItemEvent
,ItemListener
-
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
返回当前注册的所有对象的数组FooListener
在这个SCheckbox
。FooListener
使用addFooListener
方法注册。您可以使用类文字指定
listenerType
参数,如FooListener.class
。 例如,您可以使用以下代码查询Checkbox c
的项目监听器:ItemListener[] ils = (ItemListener[])(c.getListeners(ItemListener.class));
如果没有这样的侦听器存在,这个方法返回一个空数组。- 重写:
-
getListeners
在类Component
- 参数类型
-
T
- 听众的类型 - 参数
-
listenerType
- 所请求的听众的类型; 此参数应指定从java.util.EventListener
下降的接口 - 结果
-
在此复选框上注册为
FooListener
的所有对象的数组,如果未添加此类侦听器,则为空数组 - 异常
-
ClassCastException
- 如果listenerType
没有指定实现java.util.EventListener
的类或接口 - 从以下版本开始:
- 1.3
- 另请参见:
-
getItemListeners()
-
processEvent
protected void processEvent(AWTEvent e)
处理此复选框上的事件。 如果事件是一个ItemEvent
的实例,则该方法调用processItemEvent
方法。 否则,它调用其超类的processEvent
方法。请注意,如果事件参数为
null
则行为未指定,可能会导致异常。- 重写:
-
processEvent
在Component
- 参数
-
e
- 事件 - 从以下版本开始:
- 1.1
- 另请参见:
-
ItemEvent
,processItemEvent(java.awt.event.ItemEvent)
-
processItemEvent
protected void processItemEvent(ItemEvent e)
通过将此复选框发送到任何已注册的ItemListener
对象来处理在此复选框上发生的项目事件。除非为此组件启用项目事件,否则不会调用此方法。 当以下情况发生时,项目事件被启用:
- 一个
ItemListener
对象通过addItemListener
注册。 - 项目事件通过
enableEvents
启用。
请注意,如果事件参数为
null
该行为未指定,并可能导致异常。- 参数
-
e
- 项目事件 - 从以下版本开始:
- 1.1
- 另请参见:
-
ItemEvent
,ItemListener
,addItemListener(java.awt.event.ItemListener)
,Component.enableEvents(long)
- 一个
-
paramString
protected String paramString()
返回一个表示Checkbox
状态的字符串。 该方法仅用于调试目的,并且返回的字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null
。- 重写:
-
paramString
在Component
- 结果
- 此复选框的参数字符串
-
getAccessibleContext
public AccessibleContext getAccessibleContext()
获取与此复选框相关联的AccessibleContext。 对于复选框,AccessibleContext采用AccessibleAWTCheckbox的形式。 如有必要,将创建一个新的AccessibleAWTCheckbox。- Specified by:
-
getAccessibleContext
在接口Accessible
- 重写:
-
getAccessibleContext
在Component
- 结果
- 一个AccessibleAWTCheckbox作为此复选框的AccessibleContext
- 从以下版本开始:
- 1.3
-
-