模块 java.desktop
 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"));
 

此图像描述了此代码示例创建的复选框和网格布局:

The following context describes the
 graphic.

标有one的按钮处于“开”状态,另外两个处于“关”状态。在这个使用 GridLayout 类的示例中,三个复选框的状态是独立设置的。

或者,可以使用 CheckboxGroup 类将多个复选框组合在一个对象的控制下。在复选框组中,在任何给定时间最多有一个按钮处于“打开”状态。单击一个复选框将其打开会强制同一组中打开的任何其他复选框进入“关闭”状态。

自从:
1.0
参见:
  • 构造方法详细信息

    • Checkbox

      public Checkbox() throws HeadlessException
      创建一个复选框,其标签为空字符串。此复选框的状态设置为“关闭”,并且它不属于任何复选框组。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
      参见:
    • Checkbox

      public Checkbox(String  label) throws HeadlessException
      创建一个带有指定标签的复选框。此复选框的状态设置为“关闭”,并且它不属于任何复选框组。
      参数:
      label - 此复选框的字符串标签,或 null 无标签。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
      参见:
    • Checkbox

      public Checkbox(String  label, boolean state) throws HeadlessException
      创建具有指定标签的复选框并设置指定状态。此复选框不属于任何复选框组。
      参数:
      label - 此复选框的字符串标签,或 null 无标签
      state - 此复选框的初始状态
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
      参见:
    • Checkbox

      public Checkbox(String  label, boolean state, CheckboxGroup  group) throws HeadlessException
      构造一个具有指定标签、设置为指定状态并位于指定复选框组中的 Checkbox。
      参数:
      label - 此复选框的字符串标签,或 null 无标签。
      state - 此复选框的初始状态。
      group - 此复选框的复选框组,或 null 无组。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
      自从:
      1.1
      参见:
    • Checkbox

      public Checkbox(String  label, CheckboxGroup  group, boolean state) throws HeadlessException
      在指定的复选框组中创建具有指定标签的复选框,并设置为指定的状态。
      参数:
      label - 此复选框的字符串标签,或 null 无标签。
      group - 此复选框的复选框组,或 null 无组。
      state - 此复选框的初始状态。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
      自从:
      1.1
      参见:
  • 方法详情

    • addNotify

      public void addNotify()
      创建复选框的同位体。对等点允许您更改 Checkbox 的外观而不更改其功能。
      重写:
      addNotify 在类 Component
      参见:
    • getLabel

      public String  getLabel()
      获取此复选框的标签。
      返回:
      此复选框的标签,如果此复选框没有标签,则为 null
      参见:
    • setLabel

      public void setLabel(String  label)
      将此复选框的标签设置为字符串参数。
      参数:
      label - 设置为新标签的字符串,或 null 无标签。
      参见:
    • getState

      public boolean getState()
      确定此复选框是处于“打开”还是“关闭”状态。booleantrue表示“开”状态,false表示“关”状态。
      返回:
      此复选框的状态,作为boolean
      参见:
    • setState

      public void setState(boolean state)
      将此复选框的状态设置为指定状态。booleantrue表示“开”状态,false表示“关”状态。

      请注意,此方法应主要用于初始化复选框的状态。以编程方式设置复选框的状态将not触发 ItemEvent 。触发 ItemEvent 的唯一方法是通过用户交互。

      参数:
      state - 复选框的布尔状态
      参见:
    • getSelectedObjects

      public Object [] getSelectedObjects()
      返回包含复选框标签的数组(长度为 1),如果未选中复选框,则返回 null。
      指定者:
      getSelectedObjects 在接口 ItemSelectable
      返回:
      选定对象的列表,或 null
      参见:
    • getCheckboxGroup

      public CheckboxGroup  getCheckboxGroup()
      确定此复选框的组。
      返回:
      此复选框的组,或 null 如果复选框不是复选框组的一部分。
      参见:
    • setCheckboxGroup

      public void setCheckboxGroup(CheckboxGroup  g)
      将此复选框的组设置为指定的复选框组。如果此复选框已在不同的复选框组中,则首先将其从该组中取出。

      如果此复选框的状态为 true 并且新组已选中一个复选框,则此复选框的状态更改为 false 。如果此复选框的状态为 true 且新组未选中任何复选框,则此复选框变为新组的选中复选框且其状态为 true

      参数:
      g - 新的复选框组,或 null 从任何复选框组中删除此复选框
      参见:
    • addItemListener

      public void addItemListener(ItemListener  l)
      添加指定的项目监听以从该复选框接收项目事件。项目事件发送给监听以响应用户输入,但不响应对 setState() 的调用。如果 l 为 null,则不会抛出异常并且不会执行任何操作。

      有关 AWT 线程模型的详细信息,请参阅 AWT 线程问题

      指定者:
      addItemListener 在接口 ItemSelectable
      参数:
      l - 项目监听器
      自从:
      1.1
      参见:
    • removeItemListener

      public void removeItemListener(ItemListener  l)
      删除指定的项目监听,以便项目监听不再接收来自该复选框的项目事件。如果 l 为 null,则不会抛出异常并且不会执行任何操作。

      有关 AWT 线程模型的详细信息,请参阅 AWT 线程问题

      指定者:
      removeItemListener 在接口 ItemSelectable
      参数:
      l - 项目监听器
      自从:
      1.1
      参见:
    • getItemListeners

      public ItemListener [] getItemListeners()
      返回在此复选框上注册的所有项目监听的数组。
      返回:
      此复选框的所有 ItemListener s 或一个空数组,如果当前没有注册项目监听器
      自从:
      1.4
      参见:
    • getListeners

      public <T extends EventListener > T[] getListeners(Class <T> listenerType)
      返回当前在此 Checkbox 上注册为 FooListener 的所有对象的数组。 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
      参见:
    • processEvent

      protected void processEvent(AWTEvent  e)
      处理此复选框上的事件。如果事件是 ItemEvent 的实例,则此方法调用 processItemEvent 方法。否则,它调用其超类的 processEvent 方法。

      请注意,如果事件参数为 null,则行为未指定且可能导致异常。

      重写:
      processEvent 在类 Component
      参数:
      e - 事件
      自从:
      1.1
      参见:
    • processItemEvent

      protected void processItemEvent(ItemEvent  e)
      通过将事件分配给任何已注册的 ItemListener 对象来处理在此复选框上发生的项目事件。

      除非为此组件启用项目事件,否则不会调用此方法。当发生以下情况之一时,将启用项目事件:

      • ItemListener 对象通过 addItemListener 注册。
      • 项目事件通过 enableEvents 启用。

      请注意,如果事件参数为 null,则行为未指定且可能导致异常。

      参数:
      e - 项目事件
      自从:
      1.1
      参见:
    • paramString

      protected String  paramString()
      返回表示此 Checkbox 状态的字符串。此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。返回的字符串可能为空,但可能不是 null
      重写:
      paramString 在类 Component
      返回:
      此复选框的参数字符串
    • getAccessibleContext

      public AccessibleContext  getAccessibleContext()
      获取与此复选框关联的 AccessibleContext。对于复选框,AccessibleContext 采用 AccessibleAWTCheckbox 的形式。如有必要,将创建一个新的 AccessibleAWTCheckbox。
      指定者:
      getAccessibleContext 在接口 Accessible
      重写:
      getAccessibleContext 在类 Component
      返回:
      作为此复选框的 AccessibleContext 的 AccessibleAWTCheckbox
      自从:
      1.3