模块  java.desktop
软件包  java.awt

Class Checkbox

  • 实现的所有接口
    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​(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()
        创建Checkbox的对等方。 对等体允许您在不更改其功能的情况下更改复选框的外观。
        重写:
        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​(<T> listenerType)
        返回当前在此Checkbox注册为FooListener的所有对象的数组。 FooListener s使用addFooListener方法注册。

        您可以使用类文字指定listenerType参数,例如FooListener.class 例如,您可以使用以下代码查询Checkbox c的项目侦听器:

          ItemListener[] ils = (ItemListener[])(c.getListeners(ItemListener.class)); 
        如果不存在此类侦听器,则此方法返回空数组。
        重写:
        getListenersComponent
        参数类型
        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
        另请参见:
        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()
        获取与此Checkbox关联的AccessibleContext。 对于复选框,AccessibleContext采用AccessibleAWTCheckbox的形式。 如有必要,将创建一个新的AccessibleAWTCheckbox。
        Specified by:
        getAccessibleContext接口 Accessible
        重写:
        getAccessibleContext在类 Component
        结果
        一个AccessibleAWTCheckbox,用作此Checkbox的AccessibleContext
        从以下版本开始:
        1.3