返回介绍

java.awt 类 MenuItem

发布于 2019-10-04 09:49:58 字数 19522 浏览 956 评论 0 收藏 0

java.lang.Object
  └java.awt.MenuComponent
      └java.awt.MenuItem
所有已实现的接口:
Serializable, javax.accessibility.Accessible
直接已知子类:
CheckboxMenuItem, Menu

public class MenuItem
extends MenuComponent
 
implements javax.accessibility.Accessible
 

菜单中的所有项必须属于类 MenuItem 或其子类之一。

默认的 MenuItem 对象包含一个简单的加标签的菜单项。

此菜单栏的图像显示五个菜单项:以下文本是对此图像的描述。 前两项是较简单的菜单项,加有标签 "Basic""Simple" 。跟在这两项后面的是一个分隔符,它本身是一个使用标签 "-" 创建的菜单项。下一个是加有 "Check" 标签的 CheckboxMenuItem 的实例。最后一个菜单项是加有 "MoreExamples" 标签的子菜单,此子菜单是 Menu 的一个实例。

选择菜单项时,AWT 发送一个操作事件到该菜单项。由于该事件是 ActionEvent 的一个实例, processEvent 方法会检查该事件,并将它传递到 processActionEvent 。后一方法将该事件重定向到任何 ActionListener 对象,该对象已在由此菜单项生成的操作事件中注册权益。

注意,子类 Menu 重写此行为,且在选择其中一个子项前不向该框架发送任何事件。

另请参见:
序列化表格

嵌套类摘要
protected classMenuItem.AccessibleAWTMenuItem

用于为可访问性提供默认支持的 MenuItem 的内部类。

从类 java.awt.MenuComponent 继承的嵌套类/接口
MenuComponent.AccessibleAWTMenuComponent
构造方法摘要
MenuItem()

构造具有空标签且没有键盘快捷方式的新菜单项。

MenuItem(Stringlabel)

构造具有指定的标签且没有键盘快捷方式的新菜单项。

MenuItem(Stringlabel, MenuShortcuts)

创建具有关联的键盘快捷方式的菜单项。

方法摘要
voidaddActionListener(ActionListenerl)

添加指定的操作侦听器,以从此菜单项接收操作事件。

voidaddNotify()

创建该菜单项的同位体。

voiddeleteShortcut()

删除与此菜单项关联的任何 MenuShortcut 对象。

voiddisable()

已过时。从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。

protected voiddisableEvents(longeventsToDisable)

禁用将由指定事件掩码参数定义的事件提交到此菜单项。

voidenable()

已过时。从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。

voidenable(booleanb)

已过时。从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。

protected voidenableEvents(longeventsToEnable)

使事件能够提交到此菜单项,该事件将由指定事件的掩码参数定义。

javax.accessibility.AccessibleContextgetAccessibleContext()

获取与此菜单项关联的 AccessibleContext。

StringgetActionCommand()

获取由此菜单项引发的操作事件的命令名。

ActionListener[]getActionListeners()

返回在此菜单项上注册的所有操作侦听器的数组。

StringgetLabel()

获取此菜单项的标签。

<T extends EventListener> T[]
getListeners(Class<T>listenerType)

返回当前在此 MenuItem 上注册为 FooListener 的所有对象的数组。

MenuShortcutgetShortcut()

获取与此菜单项关联的 MenuShortcut 对象。

booleanisEnabled()

检查是否启用了此菜单项。

StringparamString()

返回表示此 MenuItem 状态的字符串。

protected voidprocessActionEvent(ActionEvente)

处理此菜单项上发生的操作事件,方法是将其指派给任何已注册的 ActionListener 对象。

protected voidprocessEvent(AWTEvente)

处理此菜单项上的事件。

voidremoveActionListener(ActionListenerl)

移除指定的操作侦听器,使其不再从此菜单项中接收操作事件。

voidsetActionCommand(Stringcommand)

设置由此菜单项引发的操作事件的命令名。

voidsetEnabled(booleanb)

设置是否可以选择此菜单项。

voidsetLabel(Stringlabel)

将此菜单项的标签设置为指定标签。

voidsetShortcut(MenuShortcuts)

设置与此菜单项关联的 MenuShortcut 对象。

从类 java.awt.MenuComponent 继承的方法
dispatchEvent, getFont, getName, getParent, getPeer, getTreeLock, postEvent, removeNotify, setFont, setName, toString
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

构造方法详细信息

MenuItem

public MenuItem()
         throws HeadlessException
构造具有空标签且没有键盘快捷方式的新菜单项。
抛出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true。
从以下版本开始:
JDK1.1
另请参见:
GraphicsEnvironment.isHeadless()

MenuItem

public MenuItem(Stringlabel)
         throws HeadlessException
构造具有指定的标签且没有键盘快捷方式的新菜单项。注意,保留标签中的“-”用来指示菜单项之间的分隔符。默认情况下,启用除分隔符之外的所有菜单项。
参数:
label - 此菜单项的标签。
抛出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true。
从以下版本开始:
JDK1.0
另请参见:
GraphicsEnvironment.isHeadless()

MenuItem

public MenuItem(Stringlabel,
                MenuShortcuts)
         throws HeadlessException
创建具有关联的键盘快捷方式的菜单项。注意,保留标签中的“-”用来指示菜单项之间的分隔符。默认情况下,启用除分隔符之外的所有菜单项。
参数:
label - 此菜单项的标签。
s - 与此菜单项关联的 MenuShortcut 的实例。
抛出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true。
从以下版本开始:
JDK1.1
另请参见:
GraphicsEnvironment.isHeadless()

方法详细信息

addNotify

public void addNotify()
创建该菜单项的同位体。该同位体允许我们修改该菜单项的外观,而不改变其功能。

getLabel

public String getLabel()
获取此菜单项的标签。
返回:
此菜单项的标签,如果此菜单项没有标签,则返回 null
从以下版本开始:
JDK1.0
另请参见:
setLabel(java.lang.String)

setLabel

public void setLabel(Stringlabel)
将此菜单项的标签设置为指定标签。
参数:
label - 新标签,如果无标签,则为 null
从以下版本开始:
JDK1.0
另请参见:
getLabel()

isEnabled

public boolean isEnabled()
检查是否启用了此菜单项。
从以下版本开始:
JDK1.0
另请参见:
setEnabled(boolean)

setEnabled

public void setEnabled(booleanb)
设置是否可以选择此菜单项。
参数:
b - 如果为 true ,则启用此菜单项;如果为 false ,则禁用它。
从以下版本开始:
JDK1.1
另请参见:
isEnabled()

enable

@Deprecated
public void enable()
已过时。从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。

enable

@Deprecated
public void enable(booleanb)
已过时。从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。

disable

@Deprecated
public void disable()
已过时。从 JDK version 1.1 开始,由 setEnabled(boolean) 取代。

getShortcut

public MenuShortcut getShortcut()
获取与此菜单项关联的 MenuShortcut 对象。
返回:
与此菜单项关联的菜单快捷方式,如果没有指定菜单快捷方式,则返回 null
从以下版本开始:
JDK1.1
另请参见:
setShortcut(java.awt.MenuShortcut)

setShortcut

public void setShortcut(MenuShortcuts)
设置与此菜单项关联的 MenuShortcut 对象。如果某一菜单快捷方式已经与此菜单项关联,则取代它。
参数:
s - 与此菜单项关联的菜单快捷方式。
从以下版本开始:
JDK1.1
另请参见:
getShortcut()

deleteShortcut

public void deleteShortcut()
删除与此菜单项关联的任何 MenuShortcut 对象。
从以下版本开始:
JDK1.1

enableEvents

protected final void enableEvents(longeventsToEnable)
使事件能够提交到此菜单项,该事件将由指定事件的掩码参数定义。

由于在将事件类型的侦听器添加到菜单项时,会自动启用该事件类型,所以仅需要由 MenuItem 的子类调用此方法,该子类要具有提交到 processEvent 的指定事件类型,不管侦听器是否注册。

参数:
eventsToEnable - 定义事件类型的事件掩码
从以下版本开始:
JDK1.1
另请参见:
processEvent(java.awt.AWTEvent) , disableEvents(long) , Component.enableEvents(long)

disableEvents

protected final void disableEvents(longeventsToDisable)
禁用将由指定事件掩码参数定义的事件提交到此菜单项。
参数:
eventsToDisable - 定义事件类型的事件掩码
从以下版本开始:
JDK1.1
另请参见:
processEvent(java.awt.AWTEvent) , enableEvents(long) , Component.disableEvents(long)

setActionCommand

public void setActionCommand(Stringcommand)
设置由此菜单项引发的操作事件的命令名。

默认情况下,操作命令设置为菜单项的标签。

参数:
command - 要为此菜单项设置的操作命令。
从以下版本开始:
JDK1.1
另请参见:
getActionCommand()

getActionCommand

public String getActionCommand()
获取由此菜单项引发的操作事件的命令名。
从以下版本开始:
JDK1.1
另请参见:
setActionCommand(java.lang.String)

addActionListener

public void addActionListener(ActionListenerl)
添加指定的操作侦听器,以从此菜单项接收操作事件。如果 l 为 null,则不抛出异常,也不执行操作。
参数:
l - 操作侦听器。
从以下版本开始:
JDK1.1
另请参见:
removeActionListener(java.awt.event.ActionListener) , getActionListeners() , ActionEvent , ActionListener

removeActionListener

public void removeActionListener(ActionListenerl)
移除指定的操作侦听器,使其不再从此菜单项中接收操作事件。如果 l 为 null,则不抛出异常,也不执行操作。
参数:
l - 操作侦听器。
从以下版本开始:
JDK1.1
另请参见:
addActionListener(java.awt.event.ActionListener) , getActionListeners() , ActionEvent , ActionListener

getActionListeners

public ActionListener[] getActionListeners()
返回在此菜单项上注册的所有操作侦听器的数组。
返回:
此菜单项的所有 ActionListener ,如果当前未注册操作侦听器,则返回空数组。
从以下版本开始:
1.4
另请参见:
addActionListener(java.awt.event.ActionListener) , removeActionListener(java.awt.event.ActionListener) , ActionEvent , ActionListener

getListeners

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

可以使用类文本(如 FooListener.class )指定 listenerType 参数。例如,可以使用下面的代码查询 MenuItem m 的操作侦听器:

ActionListener[] als = (ActionListener[])(m.getListeners(ActionListener.class));

如果不存在此类侦听器,则此方法返回一个空数组。

参数:
listenerType - 请求的侦听器的类型;此参数应指定一个从 java.util.EventListener 继承的接口
返回:
在此菜单项上注册为 FooListener 的所有对象的数组,如果未添加此侦听器,则返回一个空数组
抛出:
ClassCastException - 如果 listenerType 未指定一个类或者实现 java.util.EventListener 的接口。
从以下版本开始:
1.3
另请参见:
getActionListeners()

processEvent

protected void processEvent(AWTEvente)
处理此菜单项上的事件。如果事件是 ActionEvent 的一个实例,则调用 processActionEvent (由 MenuItem 定义的另一个方法)。

当前,菜单项仅支持操作事件。

注意,如果事件参数为 null ,则行为不确定,而且可能导致异常。

覆盖:
MenuComponent 中的 processEvent
参数:
e - 事件
从以下版本开始:
JDK1.1
另请参见:
ItemEvent , #processItemEvent

processActionEvent

protected void processActionEvent(ActionEvente)
处理此菜单项上发生的操作事件,方法是将其指派给任何已注册的 ActionListener 对象。不调用此方法,除非为此组件启用了操作事件。在发生以下情况之一时启用操作事件:
  • 通过 addActionListener 注册 ActionListener 对象。
  • 通过 enableEvents 启用操作事件。

注意,如果事件参数为 null ,则行为不确定,而且可能导致异常。

参数:
e - 操作事件
从以下版本开始:
JDK1.1
另请参见:
ActionEvent , ActionListener , enableEvents(long)

paramString

public String paramString()
返回表示此 MenuItem 状态的字符串。此方法仅用于调试目的,对于各个实现,所返回字符串的内容和格式可能有所不同。返回的字符串可能为空,但不可能为 null
覆盖:
MenuComponent 中的 paramString
返回:
此菜单项的参数字符串

getAccessibleContext

public javax.accessibility.AccessibleContext getAccessibleContext()
获取与此菜单项关联的 AccessibleContext。对于菜单项,AccessibleContext 采用 AccessibleAWTMenuItem 的形式。必要时要创建新的 AccessibleAWTMenuItem 实例。
指定者:
接口 javax.accessibility.Accessible 中的 getAccessibleContext
覆盖:
MenuComponent 中的 getAccessibleContext
返回:
用作此菜单项的 AccessibleContext 的 AccessibleAWTMenuItem

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文