Module  java.desktop
软件包  java.awt

Class CheckboxMenuItem

  • All Implemented Interfaces:
    ItemSelectableSerializableAccessible


    public class CheckboxMenuItem
    extends MenuItem
    implements ItemSelectable, Accessible
    此类表示可以包含在菜单中的复选框。 选择菜单中的复选框会将其状态从“开”更改为“关”,或将其从“关”更改为“开”。

    下图显示了包含CheckBoxMenuItem实例的CheckBoxMenuItem

    标签示例的菜单,包含基本,简单,检查和更多示例。 Check项是一个CheckBoxMenuItem实例,处于关闭状态。

    标有Check的项目显示“关闭”状态下的复选框菜单项。

    当选中一个复选框菜单项时,AWT将一个项目事件发送到该项目。 由于事件是ItemEvent一个实例,因此processEvent方法检查事件并将其传递给processItemEvent 后一种方法将事件重定向到已经对该菜单项生成的项目事件感兴趣的任何ItemListener对象。

    从以下版本开始:
    1.0
    另请参见:
    ItemEventItemListenerSerialized Form
    • 构造方法详细信息

      • CheckboxMenuItem

        public CheckboxMenuItem​(String label)
                         throws HeadlessException
        创建带有指定标签的复选框菜单项。 项目的状态最初设置为“关闭”。
        参数
        label - 复选框菜单项的字符串标签,或未标记菜单项的 null
        异常
        HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true
        另请参见:
        GraphicsEnvironment.isHeadless()
      • CheckboxMenuItem

        public CheckboxMenuItem​(String label,
                                boolean state)
                         throws HeadlessException
        创建带有指定标签和状态的复选框菜单项。
        参数
        label - 复选框菜单项的字符串标签,或未标记菜单项的 null
        state - 菜单项的初始状态,其中 true表示“开”, false表示“关闭”。
        异常
        HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true
        从以下版本开始:
        1.1
        另请参见:
        GraphicsEnvironment.isHeadless()
    • 方法详细信息

      • addNotify

        public void addNotify​()
        创建复选框项目的对等体。 该对等体允许我们改变复选框项目的外观,而不改变其功能。 大多数应用程序不直接调用此方法。
        重写:
        addNotifyMenuItem
        另请参见:
        Component.getToolkit()
      • getState

        public boolean getState​()
        确定此复选框菜单项的状态是“开”还是“关”。
        结果
        该复选框菜单项的状态,其中 true表示“开”,而 false表示“关”
        另请参见:
        setState(boolean)
      • setState

        public void setState​(boolean b)
        将此复选框菜单项设置为指定的状态。 布尔值true表示“开”,而false表示“关闭”。

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

        参数
        b - true如果复选框菜单项为开,否则为 false
        另请参见:
        getState()
      • getSelectedObjects

        public Object[] getSelectedObjects​()
        返回包含复选框菜单项标签的数组(长度1),如果未选中复选框,则返回null。
        Specified by:
        getSelectedObjects在接口 ItemSelectable
        结果
        所选对象的列表,或 null
        另请参见:
        ItemSelectable
      • getListeners

        public <T extends EventListener> T[] getListeners​(Class<T> listenerType)
        返回此CheckboxMenuItem当前注册为FooListener的所有对象的数组。 FooListener使用addFooListener注册。

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

          ItemListener[] ils = (ItemListener[])(c.getListeners(ItemListener.class)); 
        如果没有这样的侦听器存在,这个方法返回一个空数组。
        重写:
        getListeners在类 MenuItem
        参数类型
        T - 听众的类型
        参数
        listenerType - 所请求的听众的类型; 此参数应指定从java.util.EventListener下降的接口
        结果
        在这个复选框menuitem上注册为 FooListener的所有对象的数组,如果没有添加这样的侦听器,则是一个空数组
        异常
        ClassCastException - 如果 listenerType未指定实现 java.util.EventListener的类或接口
        从以下版本开始:
        1.3
        另请参见:
        getItemListeners()
      • processEvent

        protected void processEvent​(AWTEvent e)
        处理此复选框菜单项上的事件。 如果事件是ItemEvent的实例,则此方法调用processItemEvent方法。 如果事件不是项目事件,它将在超类上调用processEvent

        复选框菜单项目目前仅支持项目事件。

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

        重写:
        processEvent在类 MenuItem
        参数
        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)MenuItem.enableEvents(long)
      • paramString

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

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