JavaTM 2 Platform
Standard Ed. 6

java.awt
類別 Checkbox

java.lang.Object
  繼承者 java.awt.Component
      繼承者 java.awt.Checkbox
所有已實作的介面:
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 類別將一些複選框組成一組,作為單個物件來控制。在一個複選框組中,在任何給定時間,最多只能有一個按鈕處於“開”狀態。單擊並打開一個複選框會強迫同組中其他原來處於打開狀態的複選框變為“關”狀態。

從以下版本開始:
JDK1.0
另請參見:
GridLayout, CheckboxGroup, 序列化表格

巢狀類別摘要
protected  class Checkbox.AccessibleAWTCheckbox
          此類別實作對 Checkbox 類別的可存取性支持。
 
從類別 java.awt.Component 繼承的巢狀類別/介面
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
欄位摘要
 
從類別 java.awt.Component 繼承的欄位
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
從介面 java.awt.image.ImageObserver 繼承的欄位
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
建構子摘要
Checkbox()
          使用空字元串標籤創建一個複選框。
Checkbox(String label)
          使用指定標籤創建一個複選框。
Checkbox(String label, boolean state)
          使用指定標籤創建一個複選框,並將它設置為指定狀態。
Checkbox(String label, boolean state, CheckboxGroup group)
          建構具有指定標籤的 Checkbox,並將它設置為指定狀態,使它處於指定複選框組中。
Checkbox(String label, CheckboxGroup group, boolean state)
          創建具有指定標籤的 Checkbox,並使它處於指定複選框組內,將它設置為指定狀態。
 
方法摘要
 void addItemListener(ItemListener l)
          添加指定的項偵聽器,以接收來自此複選框的項事件。
 void addNotify()
          創建 Checkbox 的同位體。
 AccessibleContext getAccessibleContext()
          獲取與此 Checkbox 相關的 AccessibleContext。
 CheckboxGroup getCheckboxGroup()
          確定此複選框的組。
 ItemListener[] getItemListeners()
          返回已在此複選框上註冊的所有項偵聽器所組成的陣列。
 String getLabel()
          獲取此複選框的標籤。
<T extends EventListener>
T[]
getListeners(Class<T> listenerType)
          返回目前已在此 Checkbox 上註冊為 FooListener 的所有物件組成的陣列。
 Object[] getSelectedObjects()
          返回包含複選框標籤的陣列 (length 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)
          將此複選框的狀態設置為指定狀態。
 
從類別 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, getPeer, 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, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

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
建構具有指定標籤的 Checkbox,並將它設置為指定狀態,使它處於指定複選框組中。

參數:
label - 此複選框的字元串標籤,如果沒有標籤,則該參數為 null
state - 此複選框的初始狀態。
group - 此複選框的複選框組,如果沒有這樣的複選框組,則該參數為 null
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
從以下版本開始:
JDK1.1
另請參見:
GraphicsEnvironment.isHeadless()

Checkbox

public Checkbox(String label,
                CheckboxGroup group,
                boolean state)
         throws HeadlessException
創建具有指定標籤的 Checkbox,並使它處於指定複選框組內,將它設置為指定狀態。

參數:
label - 此複選框的字元串標籤,如果沒有標籤,則該參數為 null
group - 此複選框的複選框組,如果沒有這樣的複選框組,則該參數為 null
state - 此複選框的初始狀態。
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
從以下版本開始:
JDK1.1
另請參見:
GraphicsEnvironment.isHeadless()
方法詳細資訊

addNotify

public void addNotify()
創建 Checkbox 的同位體。該同位體允許更改 Checkbox 的外觀,而不更改其功能。

覆寫:
類別 Component 中的 addNotify
另請參見:
Toolkit.createCheckbox(java.awt.Checkbox), Component.getToolkit()

getLabel

public String getLabel()
獲取此複選框的標籤。

返回:
此複選框的標籤,如果此複選框沒有標籤,則返回 null
另請參見:
setLabel(String)

setLabel

public void setLabel(String label)
將此複選框的標籤設置為字元串參數。

參數:
label - 設置為新標籤的字元串,如果沒有標籤,則該參數為 null
另請參見:
getLabel()

getState

public boolean getState()
確定此複選框是處於“開”狀態,還是處於“關”狀態。boolean 值 true 指示此複選框處於“開”狀態,false 指示此複選框處於“關”狀態。

返回:
以 boolean 值形式表示的此複選框的狀態
另請參見:
setState(boolean)

setState

public void setState(boolean state)
將此複選框的狀態設置為指定狀態。boolean 值 true 指示此複選框處於“開”狀態,false 指示此複選框處於“關”狀態。

注意,此方法應主要用於初始化複選框的狀態。以程式方式設置複選框的狀態,這 會觸發 ItemEvent。觸發 ItemEvent 的唯一方式是使用者交互。

參數:
state - 以 boolean 值形式表示的複選框的狀態
另請參見:
getState()

getSelectedObjects

public Object[] getSelectedObjects()
返回包含複選框標籤的陣列 (length 1),如果沒有選定複選框,則返回 null。

指定者:
介面 ItemSelectable 中的 getSelectedObjects
另請參見:
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 為 null,則不會拋出異常,並且不執行任何操作。有關 AWT 的執行緒模型的細節資訊,請參閱 AWT 執行緒問題

指定者:
介面 ItemSelectable 中的 addItemListener
參數:
l - 項偵聽器
從以下版本開始:
JDK1.1
另請參見:
removeItemListener(java.awt.event.ItemListener), getItemListeners(), setState(boolean), ItemEvent, ItemListener

removeItemListener

public void removeItemListener(ItemListener l)
移除此項偵聽器,這樣項偵聽器將不再接收發自此複選框的項事件。如果 l 為 null,則不會拋出異常,並且不執行任何操作。有關 AWT 的執行緒模型的細節資訊,請參閱 AWT 執行緒問題

指定者:
介面 ItemSelectable 中的 removeItemListener
參數:
l - 項偵聽器
從以下版本開始:
JDK1.1
另請參見:
addItemListener(java.awt.event.ItemListener), getItemListeners(), ItemEvent, ItemListener

getItemListeners

public ItemListener[] getItemListeners()
返回已在此複選框上註冊的所有項偵聽器所組成的陣列。

返回:
此複選框的所有 ItemListener,如果沒有當前已註冊的項偵聽器,則返回一個空陣列
從以下版本開始:
1.4
另請參見:
addItemListener(java.awt.event.ItemListener), removeItemListener(java.awt.event.ItemListener), ItemEvent, ItemListener

getListeners

public <T extends EventListener> T[] getListeners(Class<T> listenerType)
返回目前已在此 Checkbox 上註冊為 FooListener 的所有物件組成的陣列。FooListener 是使用 addFooListener 方法註冊的。

可以用一個 class 文字值(比如 FooListener.class)指定 listenerType 參數。例如,可以使用以下程式碼查詢 Checkbox c,以獲得它的項偵聽器:

ItemListener[] ils = (ItemListener[])(c.getListeners(ItemListener.class));
如果不存在這樣的偵聽器,則此方法將返回一個空陣列。

覆寫:
類別 Component 中的 getListeners
參數:
listenerType - 所請求偵聽器的型別;該參數應該指定一個從 java.util.EventListener 遺傳下來的介面
返回:
在此複選框上註冊為 FooListener 的所有物件組成的陣列,如果沒有添加這樣的偵聽器,則返回一個空陣列
拋出:
ClassCastException - 如果 listenerType 沒有指定實作 java.util.EventListener 的類別或介面
從以下版本開始:
1.3
另請參見:
getItemListeners()

processEvent

protected void processEvent(AWTEvent e)
處理關於此複選框的事件。如果事件是 ItemEvent 的一個實例,則此方法將調用 processItemEvent 方法。否則,它將調用其父級類別的 processEvent 方法。

注意,如果事件參數為 null,則行為是不確定的,並且可能導致異常。

覆寫:
類別 Component 中的 processEvent
參數:
e - 事件
從以下版本開始:
JDK1.1
另請參見:
ItemEvent, processItemEvent(java.awt.event.ItemEvent)

processItemEvent

protected void processItemEvent(ItemEvent e)
處理發生在此複選框上的項事件,方法是將這些事件指派給所有已註冊的 ItemListener 物件。

只有啟用元件的項事件之後,才會調用此方法。當下列事件之一發生時,項事件將被啟用:

注意,如果事件參數為 null,則行為是不確定的,並且可能導致異常。

參數:
e - 項事件
從以下版本開始:
JDK1.1
另請參見:
ItemEvent, ItemListener, addItemListener(java.awt.event.ItemListener), Component.enableEvents(long)

paramString

protected String paramString()
返回表示此 Checkbox 的狀態的字元串。此方法僅在進行除錯的時候使用,對於這兩個實作,所返回字元串的內容和格式可能有所不同。返回的字元串可以為空,但不可以為 null

覆寫:
類別 Component 中的 paramString
返回:
此複選框的參數字元串。

getAccessibleContext

public AccessibleContext getAccessibleContext()
獲取與此 Checkbox 相關的 AccessibleContext。對於複選框,AccessibleContext 採用的是 AccessibleAWTCheckbox 的形式。如有必要,可以創建一個新的 AccessibleAWTCheckbox。

指定者:
介面 Accessible 中的 getAccessibleContext
覆寫:
類別 Component 中的 getAccessibleContext
返回:
充當此 Checkbox 的 AccessibleContext 的 AccessibleAWTCheckbox
從以下版本開始:
1.3

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only