- java.lang.Object
-
- java.awt.MenuComponent
-
- java.awt.MenuItem
-
- java.awt.CheckboxMenuItem
-
- All Implemented Interfaces:
-
ItemSelectable
,Serializable
,Accessible
public class CheckboxMenuItem extends MenuItem implements ItemSelectable, Accessible
此类表示可以包含在菜单中的复选框。 选择菜单中的复选框会将其状态从“开”更改为“关”,或将其从“关”更改为“开”。下图显示了包含
CheckBoxMenuItem
实例的CheckBoxMenuItem
:标有
Check
的项目显示“关闭”状态下的复选框菜单项。当选中一个复选框菜单项时,AWT将一个项目事件发送到该项目。 由于事件是
ItemEvent
一个实例,因此processEvent
方法检查事件并将其传递给processItemEvent
。 后一种方法将事件重定向到已经对该菜单项生成的项目事件感兴趣的任何ItemListener
对象。- 从以下版本开始:
- 1.0
- 另请参见:
-
ItemEvent
,ItemListener
, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 protected class
CheckboxMenuItem.AccessibleAWTCheckboxMenuItem
用于提供对辅助功能的默认支持的CheckboxMenuItem的内部类。-
Nested classes/interfaces inherited from class java.awt.MenuComponent
MenuComponent.AccessibleAWTMenuComponent
-
Nested classes/interfaces inherited from class java.awt.MenuItem
MenuItem.AccessibleAWTMenuItem
-
-
构造方法摘要
构造方法 Constructor 描述 CheckboxMenuItem()
创建一个带有空标签的复选框菜单项。CheckboxMenuItem(String label)
创建带有指定标签的复选框菜单项。CheckboxMenuItem(String label, boolean state)
创建带有指定标签和状态的复选框菜单项。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
addItemListener(ItemListener l)
添加指定的项目侦听器以从此复选框菜单项接收项目事件。void
addNotify()
创建复选框项目的对等体。AccessibleContext
getAccessibleContext()
获取与此CheckboxMenuItem关联的AccessibleContext。ItemListener[]
getItemListeners()
返回在此复选框菜单上注册的所有项目侦听器的数组。<T extends EventListener>
T[]getListeners(Class<T> listenerType)
返回此CheckboxMenuItem
当前注册为FooListener
的所有对象的数组。Object[]
getSelectedObjects()
返回包含复选框菜单项标签的数组(长度1),如果未选中复选框,则返回null。boolean
getState()
确定此复选框菜单项的状态是“开”还是“关”。String
paramString()
返回一个表示CheckBoxMenuItem
状态的字符串。protected void
processEvent(AWTEvent e)
处理此复选框菜单项上的事件。protected void
processItemEvent(ItemEvent e)
通过将此复选框菜单项发送到任何已注册的ItemListener
对象来处理项目事件。void
removeItemListener(ItemListener l)
删除指定的项目监听器,使其不再从此复选框菜单项目接收项目事件。void
setState(boolean b)
将此复选框菜单项设置为指定的状态。-
Methods inherited from class java.awt.MenuComponent
dispatchEvent, getFont, getName, getParent, getTreeLock, postEvent, removeNotify, setFont, setName, toString
-
Methods inherited from class java.awt.MenuItem
addActionListener, deleteShortcut, disable, disableEvents, enable, enable, enableEvents, getActionCommand, getActionListeners, getLabel, getShortcut, isEnabled, processActionEvent, removeActionListener, setActionCommand, setEnabled, setLabel, setShortcut
-
-
-
-
构造方法详细信息
-
CheckboxMenuItem
public CheckboxMenuItem() throws HeadlessException
创建一个带有空标签的复选框菜单项。 项目的状态最初设置为“关闭”。- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()返回true - 从以下版本开始:
- 1.1
- 另请参见:
-
GraphicsEnvironment.isHeadless()
-
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()
创建复选框项目的对等体。 该对等体允许我们改变复选框项目的外观,而不改变其功能。 大多数应用程序不直接调用此方法。- 重写:
-
addNotify
在MenuItem
- 另请参见:
-
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
-
addItemListener
public void addItemListener(ItemListener l)
添加指定的项目侦听器以从此复选框菜单项接收项目事件。 事件响应用户操作发送,但不响应对setState()的调用。 如果l为空,则不会抛出任何异常,也不会执行任何操作。有关AWT线程模型的详细信息,请参阅AWT Threading Issues 。
- Specified by:
-
addItemListener
在接口ItemSelectable
- 参数
-
l
- 项目监听器 - 从以下版本开始:
- 1.1
- 另请参见:
-
removeItemListener(java.awt.event.ItemListener)
,getItemListeners()
,setState(boolean)
,ItemEvent
,ItemListener
-
removeItemListener
public void removeItemListener(ItemListener l)
- Specified by:
-
removeItemListener
在接口ItemSelectable
- 参数
-
l
- 项目监听器 - 从以下版本开始:
- 1.1
- 另请参见:
-
addItemListener(java.awt.event.ItemListener)
,getItemListeners()
,ItemEvent
,ItemListener
-
getItemListeners
public ItemListener[] getItemListeners()
返回在此复选框菜单上注册的所有项目侦听器的数组。- 结果
-
所有这个复选框menuitem的
ItemListener
s或一个空数组,如果没有项目监听器当前注册 - 从以下版本开始:
- 1.4
- 另请参见:
-
addItemListener(java.awt.event.ItemListener)
,removeItemListener(java.awt.event.ItemListener)
,ItemEvent
,ItemListener
-
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
- 另请参见:
-
ItemEvent
,processItemEvent(java.awt.event.ItemEvent)
-
processItemEvent
protected void processItemEvent(ItemEvent e)
通过将此复选框菜单项发送到任何已注册的ItemListener
对象来处理项目事件。除非为此菜单项启用项目事件,否则不会调用此方法。 当以下情况发生时,项目事件被启用:
- 一个
ItemListener
对象通过addItemListener
注册。 - 项目事件通过
enableEvents
启用。
请注意,如果事件参数为
null
该行为是未指定的,可能会导致异常。- 参数
-
e
- 项目事件 - 从以下版本开始:
- 1.1
- 另请参见:
-
ItemEvent
,ItemListener
,addItemListener(java.awt.event.ItemListener)
,MenuItem.enableEvents(long)
- 一个
-
paramString
public String paramString()
返回一个表示CheckBoxMenuItem
状态的字符串。 该方法仅用于调试目的,并且返回的字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null
。- 重写:
-
paramString
在MenuItem
- 结果
- 该复选框菜单项的参数字符串
-
getAccessibleContext
public AccessibleContext getAccessibleContext()
获取与此CheckboxMenuItem关联的AccessibleContext。 对于复选框菜单项,AccessibleContext采用AccessibleAWTCheckboxMenuItem的形式。 如有必要,将创建一个新的AccessibleAWTCheckboxMenuItem。- Specified by:
-
getAccessibleContext
在接口Accessible
- 重写:
-
getAccessibleContext
在MenuItem
- 结果
- 一个AccessibleAWTCheckboxMenuItem,用作此CheckboxMenuItem的AccessibleContext
- 从以下版本开始:
- 1.3
-
-