java.lang.Object
java.awt.MenuComponent
java.awt.MenuItem
java.awt.Menu
所有已实现的接口:MenuContainer, Serializable, javax.accessibility.Accessible
直接已知子类:PopupMenu
public class Menuextends MenuItemimplements MenuContainer, javax.accessibility.Accessible
Menu 对象是从菜单栏部署的下拉式菜单组件。
菜单可以是任意分离式 菜单。可以打开分离式菜单,并从其父菜单栏或菜单中拖开。释放鼠标按钮之后,它仍然在屏幕上。分离菜单的机制与平台有关,因为分离式菜单的外观由其同位体确定。对于不支持分离式菜单的平台,分离属性会被忽略。
菜单中的每一项都必须属于 MenuItem 类。它可以是 MenuItem 的一个实例、子菜单(Menu 的一个实例)、或复选框(CheckboxMenuItem 的一个实例)。
从以下版本开始:
JDK1.0
另请参见:MenuItem,
CheckboxMenuItem,
序列化表格
嵌套类摘要
protected class
Menu.AccessibleAWTMenu
菜单的内部类,用于为可访问性提供默认支持。
从类 java.awt.MenuItem 继承的嵌套类/接口
MenuItem.AccessibleAWTMenuItem
从类 java.awt.MenuComponent 继承的嵌套类/接口
MenuComponent.AccessibleAWTMenuComponent
构造方法摘要
Menu()
构造具有空标签的新菜单。
Menu(Stringlabel)
构造具有指定标签的新菜单。
Menu(Stringlabel,
booleantearOff)
构造具有指定标签的新菜单,指示该菜单是否可以分离。
方法摘要
MenuItem
add(MenuItemmi)
将指定的菜单项添加到此菜单。
void
add(Stringlabel)
将带有指定标签的项添加到此菜单。
void
addNotify()
创建该菜单的同位体。
void
addSeparator()
将一个分隔线或连字符添加到菜单的当前位置。
int
countItems()
已过时。从 JDK version 1.1 开始,已由 getItemCount() 取代。
javax.accessibility.AccessibleContext
getAccessibleContext()
获取与此菜单关联的 AccessibleContext。
MenuItem
getItem(intindex)
获取此菜单的指定索引处的项。
int
getItemCount()
获取此菜单中的项数。
void
insert(MenuItemmenuitem,
intindex)
将菜单项插入到此菜单的指定位置。
void
insert(Stringlabel,
intindex)
将带有指定标签的菜单项插入到此菜单的指定位置。
void
insertSeparator(intindex)
在指定的位置插入分隔符。
boolean
isTearOff()
指示此菜单是否为分离式菜单。
String
paramString()
返回表示此 Menu 状态的字符串。
void
remove(intindex)
从此菜单移除指定索引处的菜单项。
void
remove(MenuComponentitem)
从此菜单移除指定的菜单项。
void
removeAll()
从此菜单移除所有项。
void
removeNotify()
移除该菜单的同位体。
从类 java.awt.MenuItem 继承的方法
addActionListener, deleteShortcut, disable, disableEvents, enable, enable, enableEvents, getActionCommand, getActionListeners, getLabel, getListeners, getShortcut, isEnabled, processActionEvent, processEvent, removeActionListener, setActionCommand, setEnabled, setLabel, setShortcut
从类 java.awt.MenuComponent 继承的方法
dispatchEvent, getFont, getName, getParent, getPeer, getTreeLock, postEvent, setFont, setName, toString
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
从接口 java.awt.MenuContainer 继承的方法
getFont, postEvent
构造方法详细信息
Menu
public Menu()
throws HeadlessException
构造具有空标签的新菜单。此菜单不是分离式菜单。
抛出:HeadlessException – 如果 GraphicsEnvironment.isHeadless() 返回 true。从以下版本开始:
JDK1.1
另请参见:GraphicsEnvironment.isHeadless()
Menu
public Menu(Stringlabel)
throws HeadlessException
构造具有指定标签的新菜单。此菜单不是分离式菜单。
参数:label – 菜单栏或其他菜单(此菜单是其子菜单)中菜单的标签。抛出:HeadlessException – 如果 GraphicsEnvironment.isHeadless() 返回 true。另请参见:GraphicsEnvironment.isHeadless()
Menu
public Menu(Stringlabel,
booleantearOff)
throws HeadlessException
构造具有指定标签的新菜单,指示该菜单是否可以分离。
可能并非 AWT 的所有实现都支持分离功能。如果特定的实现不支持分离式菜单,则此值会被默认忽略。
参数:label – 菜单栏或其他菜单(此菜单是其子菜单)中菜单的标签。tearOff – 如果为 true,则该菜单为分离式菜单。抛出:HeadlessException – 如果 GraphicsEnvironment.isHeadless() 返回 true。从以下版本开始:
JDK1.0.
另请参见:GraphicsEnvironment.isHeadless()
方法详细信息
addNotify
public void addNotify()
创建该菜单的同位体。该同位体允许我们修改该菜单的外观,而不更改其功能。
覆盖:类 MenuItem 中的 addNotify
removeNotify
public void removeNotify()
移除该菜单的同位体。该同位体允许我们修改该菜单的外观,而不更改其功能。
覆盖:类 MenuComponent 中的 removeNotify
isTearOff
public boolean isTearOff()
指示此菜单是否为分离式菜单。
AWT 的所有实现都不支持分离功能。如果特定的实现不支持分离式菜单,则此值会被默认忽略。
返回:如果这是一个分离式菜单,则返回 true;否则返回 false。
getItemCount
public int getItemCount()
获取此菜单中的项数。
返回:此菜单中的项数。从以下版本开始:
JDK1.1
countItems
@Deprecated
public int countItems()
已过时。从 JDK version 1.1 开始,已由 getItemCount() 取代。
getItem
public MenuItem getItem(intindex)
获取此菜单的指定索引处的项。
参数:index – 要返回的项的位置。返回:指定索引处的项。
add
public MenuItem add(MenuItemmi)
将指定的菜单项添加到此菜单。如果该菜单项为另一个菜单的一部分,则从该菜单移除它。
参数:mi – 要添加的菜单项返回:已添加的菜单项另请参见:insert(java.lang.String, int),
insert(java.awt.MenuItem, int)
add
public void add(Stringlabel)
将带有指定标签的项添加到此菜单。
参数:label – 该项上的文本另请参见:insert(java.lang.String, int),
insert(java.awt.MenuItem, int)
insert
public void insert(MenuItemmenuitem,
intindex)
将菜单项插入到此菜单的指定位置。
参数:menuitem – 要插入的菜单项。index – 菜单项应插入的位置。抛出:IllegalArgumentException – 如果 index 的值小于零从以下版本开始:
JDK1.1
另请参见:add(java.lang.String),
add(java.awt.MenuItem)
insert
public void insert(Stringlabel,
intindex)
将带有指定标签的菜单项插入到此菜单的指定位置。这是 insert(menuItem, index) 的一个便捷方法。
参数:label – 项的文本index – 菜单项应插入的位置抛出:IllegalArgumentException – 如果 index 的值小于零从以下版本开始:
JDK1.1
另请参见:add(java.lang.String),
add(java.awt.MenuItem)
addSeparator
public void addSeparator()
将一个分隔线或连字符添加到菜单的当前位置。
另请参见:insertSeparator(int)
insertSeparator
public void insertSeparator(intindex)
在指定的位置插入分隔符。
参数:index – 菜单分隔符应插入的位置。抛出:IllegalArgumentException – 如果 index 的值小于 0。从以下版本开始:
JDK1.1
另请参见:addSeparator()
remove
public void remove(intindex)
从此菜单移除指定索引处的菜单项。
参数:index – 要移除的项的位置。
remove
public void remove(MenuComponentitem)
从此菜单移除指定的菜单项。
指定者:接口 MenuContainer 中的 remove
参数:item – 要从该菜单移除的项。如果 item 为 null,或不在此菜单中,则此方法不执行任何操作。
removeAll
public void removeAll()
从此菜单移除所有项。
从以下版本开始:
JDK1.0.
paramString
public String paramString()
返回表示此 Menu 状态的字符串。此方法仅用于调试目的,对于这两个实现,返回的字符串的内容和格式可能有所不同。返回的字符串可能为空,但不可能为 null。
覆盖:类 MenuItem 中的 paramString
返回:此菜单的参数字符串
getAccessibleContext
public javax.accessibility.AccessibleContext getAccessibleContext()
获取与此菜单关联的 AccessibleContext。对于菜单,AccessibleContext 会采用 AccessibleAWTMenu 的窗体。必要时创建一个新的 AccessibleAWTDialog 实例。
指定者:接口 javax.accessibility.Accessible 中的 getAccessibleContext覆盖:类 MenuItem 中的 getAccessibleContext
返回:用作此菜单的 AccessibleContext 的 AccessibleAWTMenu