Module  java.desktop
软件包  java.awt

Class Checkbox

  • All Implemented Interfaces:
    ImageObserverItemSelectableMenuContainerSerializableAccessible


    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
    另请参见:
    GridLayoutCheckboxGroupSerialized Form
    • 构造方法详细信息

      • 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​()
        创建复选框的对等体。 对等体允许您更改复选框的外观,而不更改其功能。
        重写:
        addNotifyComponent
        另请参见:
        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()
      • getListeners

        public <T extends EventListener> T[] getListeners​(Class<T> listenerType)
        返回当前注册的所有对象的数组FooListener在这个S Checkbox 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则行为未指定,可能会导致异常。

        重写:
        processEventComponent
        参数
        e - 事件
        从以下版本开始:
        1.1
        另请参见:
        ItemEventprocessItemEvent(java.awt.event.ItemEvent)
      • processItemEvent

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

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

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

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

        参数
        e - 项目事件
        从以下版本开始:
        1.1
        另请参见:
        ItemEventItemListeneraddItemListener(java.awt.event.ItemListener)Component.enableEvents(long)
      • paramString

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

        public AccessibleContext getAccessibleContext​()
        获取与此复选框相关联的AccessibleContext。 对于复选框,AccessibleContext采用AccessibleAWTCheckbox的形式。 如有必要,将创建一个新的AccessibleAWTCheckbox。
        Specified by:
        getAccessibleContext在接口 Accessible
        重写:
        getAccessibleContextComponent
        结果
        一个AccessibleAWTCheckbox作为此复选框的AccessibleContext
        从以下版本开始:
        1.3