模块  java.desktop
软件包  java.awt

Class Menu

  • 实现的所有接口
    MenuContainerSerializableAccessible
    已知直接子类:
    PopupMenu

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

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

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

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

      • Menu

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

        AWT的所有实现可能都不支持撕除功能。 如果特定实现不支持撕下菜单,则会默默忽略此值。

        参数
        label - 菜单栏中的菜单标签,或此菜单为子菜单的其他菜单。
        tearOff - 如果是 true ,菜单是一个可撕下的菜单。
        异常
        HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true。
        另请参见:
        GraphicsEnvironment.isHeadless()
    • 方法详细信息

      • addNotify

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

        public void removeNotify()
        删除菜单的同行。 对等体允许我们修改菜单的外观而不改变其功能。
        重写:
        removeNotifyMenuComponent
      • isTearOff

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

        AWT的所有实现可能都不支持撕除功能。 如果特定实现不支持撕下菜单,则会默默忽略此值。

        结果
        true如果这是一个撕下的菜单; 否则为false
      • getItemCount

        public int getItemCount()
        获取此菜单中的项目数。
        结果
        此菜单中的项目数
        从以下版本开始:
        1.1
      • countItems

        @Deprecated
        public int countItems()
        Deprecated.
        As of JDK version 1.1, replaced by getItemCount().
        返回此菜单中的项目数。
        结果
        此菜单中的项目数
      • getItem

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

        public void insert​(String label,
                           int index)
        将具有指定标签的菜单项插入此菜单中的指定位置。 这是insert(menuItem, index)的便捷方法。
        参数
        label - 项目上的文字
        index - 应插入菜单项的位置
        异常
        IllegalArgumentException -如果值 index小于零
        从以下版本开始:
        1.1
        另请参见:
        add(java.lang.String)add(java.awt.MenuItem)
      • addSeparator

        public void addSeparator()
        在当前位置的菜单中添加分隔线或超级分隔线。
        另请参见:
        insertSeparator(int)
      • insertSeparator

        public void insertSeparator​(int index)
        在指定位置插入分隔符。
        参数
        index - 应插入菜单分隔符的位置。
        异常
        IllegalArgumentException -如果值 index小于0。
        从以下版本开始:
        1.1
        另请参见:
        addSeparator()
      • remove

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

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

        public void removeAll()
        从此菜单中删除所有项目。
        从以下版本开始:
        1.1
      • paramString

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

        public AccessibleContext getAccessibleContext()
        获取与此Menu关联的AccessibleContext。 对于菜单,AccessibleContext采用AccessibleAWTMenu的形式。 如有必要,将创建一个新的AccessibleAWTMenu实例。
        Specified by:
        getAccessibleContext在界面 Accessible
        重写:
        getAccessibleContext在类 MenuItem
        结果
        AccessibleAWTMenu,用作此菜单的AccessibleContext
        从以下版本开始:
        1.3