模块 java.desktop
 java.awt

类 Menu

所有已实现的接口:
MenuContainer , Serializable , Accessible
已知子类:
PopupMenu

public class Menu extends MenuItem implements MenuContainer , Accessible
Menu 对象是从菜单栏部署的下拉菜单组件。

菜单可以选择是撕下菜单。可以打开撕下菜单并将其拖离其父菜单栏或菜单。释放鼠标按钮后,它仍保留在屏幕上。撕下菜单的机制依赖于平台,因为撕下菜单的外观和感觉由其对等项决定。在不支持 tear-off 菜单的平台上,tear-off 属性将被忽略。

菜单中的每个项目都必须属于 MenuItem 类。它可以是 MenuItem 的实例、子菜单( Menu 的实例)或复选框( CheckboxMenuItem 的实例)。

自从:
1.0
参见:
  • 构造方法详细信息

    • Menu

      public Menu() throws HeadlessException
      构造一个带有空标签的新菜单。此菜单不是可撕下的菜单。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true。
      自从:
      1.1
      参见:
    • Menu

      public Menu(String  label) throws HeadlessException
      构造具有指定标签的新菜单。此菜单不是可撕下的菜单。
      参数:
      label - 菜单栏中的菜单标签,或此菜单是其子菜单的另一个菜单中的标签。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true。
      参见:
    • Menu

      public Menu(String  label, boolean tearOff) throws HeadlessException
      构造一个带有指定标签的新菜单,指示菜单是否可以被撕掉。

      并非所有 AWT 实现都支持分离功能。如果一个特定的实现不支持撕下菜单,这个值会被默默地忽略。

      参数:
      label - 菜单栏中的菜单标签,或此菜单是其子菜单的另一个菜单中的标签。
      tearOff - 如果是 true ,则该菜单是可撕下的菜单。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true。
      参见:
  • 方法详情

    • addNotify

      public void addNotify()
      创建菜单的对等项。点允许我们修改菜单的外观而不改变它的功能。
      重写:
      addNotify 在类 MenuItem
    • removeNotify

      public void removeNotify()
      删除菜单的对等项。点允许我们修改菜单的外观而不改变它的功能。
      重写:
      removeNotify 在类 MenuComponent
    • isTearOff

      public boolean isTearOff()
      指示此菜单是否为可撕下菜单。

      并非所有 AWT 实现都支持分离功能。如果一个特定的实现不支持撕下菜单,这个值会被默默地忽略。

      返回:
      true 如果这是一个可撕下的菜单; false否则。
    • getItemCount

      public int getItemCount()
      获取此菜单中的项目数。
      返回:
      此菜单中的项目数
      自从:
      1.1
    • countItems

      @Deprecated public int countItems()
      已弃用。
      从 JDK 1.1 版开始,由 getItemCount() 取代。
      返回此菜单中的项目数。
      返回:
      此菜单中的项目数
    • getItem

      public MenuItem  getItem(int index)
      获取位于此菜单的指定索引处的项目。
      参数:
      index - 要返回的项目的位置。
      返回:
      位于指定索引处的项目。
    • add

      public MenuItem  add(MenuItem  mi)
      将指定的菜单项添加到此菜单。如果菜单项是另一个菜单的一部分,则将其从该菜单中删除。
      参数:
      mi - 要添加的菜单项
      返回:
      添加的菜单项
      参见:
    • add

      public void add(String  label)
      将具有指定标签的项目添加到此菜单。
      参数:
      label - 物品上的文字
      参见:
    • insert

      public void insert(MenuItem  menuitem, int index)
      将菜单项插入此菜单的指定位置。
      参数:
      menuitem - 要插入的菜单项。
      index - 应插入菜单项的位置。
      抛出:
      IllegalArgumentException - 如果 index 的值小于零
      自从:
      1.1
      参见:
    • insert

      public void insert(String  label, int index)
      将具有指定标签的菜单项插入此菜单的指定位置。这是 insert(menuItem, index) 的便捷方法。
      参数:
      label - 物品上的文字
      index - 应插入菜单项的位置
      抛出:
      IllegalArgumentException - 如果 index 的值小于零
      自从:
      1.1
      参见:
    • addSeparator

      public void addSeparator()
      在当前位置的菜单中添加分隔线或连字符。
      参见:
    • insertSeparator

      public void insertSeparator(int index)
      在指定位置插入分隔符。
      参数:
      index - 应插入菜单分隔符的位置。
      抛出:
      IllegalArgumentException - 如果 index 的值小于 0。
      自从:
      1.1
      参见:
    • remove

      public void remove(int index)
      从此菜单中删除指定索引处的菜单项。
      参数:
      index - 要删除的项目的位置。
    • remove

      public void remove(MenuComponent  item)
      从此菜单中删除指定的菜单项。
      指定者:
      remove 在接口 MenuContainer
      参数:
      item - 要从菜单中删除的项目。如果 itemnull 或不在此菜单中,则此方法不执行任何操作。
    • removeAll

      public void removeAll()
      从此菜单中删除所有项目。
      自从:
      1.1
    • paramString

      public String  paramString()
      返回表示此 Menu 状态的字符串。此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。返回的字符串可能为空,但可能不是 null
      重写:
      paramString 在类 MenuItem
      返回:
      该菜单的参数字符串
    • getAccessibleContext

      public AccessibleContext  getAccessibleContext()
      获取与此菜单关联的 AccessibleContext。对于菜单,AccessibleContext 采用 AccessibleAWTMenu 的形式。如有必要,将创建一个新的 AccessibleAWTMenu 实例。
      指定者:
      getAccessibleContext 在接口 Accessible
      重写:
      getAccessibleContext 在类 MenuItem
      返回:
      作为此菜单的 AccessibleContext 的 AccessibleAWTMenu
      自从:
      1.3