Module  java.desktop

Class BasicMenuItemUI

    • 字段详细信息

      • menuItem

        protected JMenuItem menuItem
        实例 JMenuItem
      • selectionBackground

        protected Color selectionBackground
        选择背景的颜色。
      • selectionForeground

        protected Color selectionForeground
        选择前景的颜色。
      • disabledForeground

        protected Color disabledForeground
        禁用前景的颜色。
      • acceleratorForeground

        protected Color acceleratorForeground
        加速器前景的颜色。
      • acceleratorSelectionForeground

        protected Color acceleratorSelectionForeground
        加速器选择的颜色。
      • acceleratorDelimiter

        protected String acceleratorDelimiter
        加速器分隔字符串,如 '+''Ctrl+C'
        从以下版本开始:
        1.7
      • defaultTextIconGap

        protected int defaultTextIconGap
        文字与图示之间的差距。
      • acceleratorFont

        protected Font acceleratorFont
        加速器字体。
      • mouseInputListener

        protected MouseInputListener mouseInputListener
        实例 MouseInputListener
      • menuDragMouseListener

        protected MenuDragMouseListener menuDragMouseListener
        实例 MenuDragMouseListener
      • menuKeyListener

        protected MenuKeyListener menuKeyListener
        实例 MenuKeyListener
      • arrowIcon

        protected Icon arrowIcon
        箭头图标。
      • checkIcon

        protected Icon checkIcon
        检查图标。
      • oldBorderPainted

        protected boolean oldBorderPainted
        该值表示如果旧边框被绘制。
    • 构造方法详细信息

      • BasicMenuItemUI

        public BasicMenuItemUI​()
    • 方法详细信息

      • createUI

        public static ComponentUI createUI​(JComponent c)
        返回一个新的实例 BasicMenuItemUI
        参数
        c - 一个组件
        结果
        一个新的例子 BasicMenuItemUI
      • installUI

        public void installUI​(JComponent c)
        描述从类复制: ComponentUI
        适当地配置指定的组件的外观和感觉。 当正在安装ComponentUI实例作为指定组件上的UI委托时,将调用此方法。 该方法应该完全配置组件的外观,包括以下内容:
        1. 为组件上的颜色,字体,边框,图标,不透明度等安装默认属性值。 只要有可能,由客户端程序初始化的属性值应该被重写。
        2. 如有必要,请在组件上安装LayoutManager
        3. 创建/添加任何所需的子组件到组件。
        4. 在组件上创建/安装事件监听器。
        5. 在组件上创建/安装PropertyChangeListener ,以便适当地检测和响应组件属性的更改。
        6. 在组件上安装键盘UI(助记符,遍历等)。
        7. 初始化任何适当的实例数据。
        重写:
        installUIComponentUI
        参数
        c - 正在安装此UI c的组件
        另请参见:
        ComponentUI.uninstallUI(javax.swing.JComponent)JComponent.setUI(javax.swing.plaf.ComponentUI)JComponent.updateUI()
      • installDefaults

        protected void installDefaults​()
        安装默认属性。
      • installComponents

        protected void installComponents​(JMenuItem menuItem)
        参数
        menuItem - 一个菜单项
        从以下版本开始:
        1.3
      • getPropertyPrefix

        protected String getPropertyPrefix​()
        返回属性前缀。
        结果
        属性前缀
      • installListeners

        protected void installListeners​()
        注册听众。
      • installKeyboardActions

        protected void installKeyboardActions​()
        注册键盘动作。
      • uninstallUI

        public void uninstallUI​(JComponent c)
        描述从类复制: ComponentUI
        installUI反转在指定组件上完成的配置。 当该UIComponent实例作为指定组件的UI委托被删除时,将调用此方法。 该方法应该撤销在installUI执行的配置,注意将JComponent实例保持在干净的状态(没有无关的侦听器,外观特定属性对象等)。 这应该包括以下内容:
        1. 从组件中删除任何UI集边框。
        2. 删除组件上的任何UI集布局管理器。
        3. 从组件中删除任何添加了UI的子组件。
        4. 从组件中删除任何UI添加的事件/属性侦听器。
        5. 从组件中删除任何UI安装的键盘UI。
        6. 对任何分配的实例数据对象进行空白以允许GC。
        重写:
        uninstallUIComponentUI
        参数
        c - 正在删除此UI c的组件; 这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
        另请参见:
        ComponentUI.installUI(javax.swing.JComponent)JComponent.updateUI()
      • uninstallDefaults

        protected void uninstallDefaults​()
        卸载默认属性。
      • uninstallComponents

        protected void uninstallComponents​(JMenuItem menuItem)
        取消注册组件。
        参数
        menuItem - 一个菜单项
        从以下版本开始:
        1.3
      • uninstallListeners

        protected void uninstallListeners​()
        取消注册听众。
      • uninstallKeyboardActions

        protected void uninstallKeyboardActions​()
        取消注册键盘操作。
      • createMouseInputListener

        protected MouseInputListener createMouseInputListener​(JComponent c)
        返回一个 MouseInputListener的实例。
        参数
        c - 一个组件
        结果
        一个 MouseInputListener
      • createMenuDragMouseListener

        protected MenuDragMouseListener createMenuDragMouseListener​(JComponent c)
        返回一个 MenuDragMouseListener的实例。
        参数
        c - 一个组件
        结果
        一个 MenuDragMouseListener
      • createMenuKeyListener

        protected MenuKeyListener createMenuKeyListener​(JComponent c)
        返回一个 MenuKeyListener的实例。
        参数
        c - 一个组件
        结果
        一个 MenuKeyListener
      • createPropertyChangeListener

        protected PropertyChangeListener createPropertyChangeListener​(JComponent c)
        创建一个将被添加到菜单项的PropertyChangeListener 如果此方法返回null,则不会将其添加到菜单项。
        参数
        c - 一个组件
        结果
        一个 PropertyChangeListener的实例或null
        从以下版本开始:
        1.6
      • getPreferredSize

        public Dimension getPreferredSize​(JComponent c)
        描述从类复制: ComponentUI
        返回指定组件的偏好大小,适合外观和感觉。 如果返回null ,则首选的大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。 此方法的默认实现将返回null
        重写:
        getPreferredSizeComponentUI
        参数
        c - 要查询其首选大小的组件; 这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
        结果
        一个 Dimension对象包含给定的组件的首选大小适合外观和感觉
        另请参见:
        JComponent.getPreferredSize()LayoutManager.preferredLayoutSize(java.awt.Container)
      • getMaximumSize

        public Dimension getMaximumSize​(JComponent c)
        描述从类复制: ComponentUI
        返回指定组件的最大尺寸,适合外观和感觉。 如果返回null ,则最大大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。 此方法的默认实现将调用getPreferredSize并返回该值。
        重写:
        getMaximumSizeComponentUI
        参数
        c - 查询最大大小的组件; 这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
        结果
        一个 Dimension对象或 null
        另请参见:
        JComponent.getMaximumSize()LayoutManager2.maximumLayoutSize(java.awt.Container)
      • getPreferredMenuItemSize

        protected Dimension getPreferredMenuItemSize​(JComponent c,
                                                     Icon checkIcon,
                                                     Icon arrowIcon,
                                                     int defaultTextIconGap)
        返回菜单项的首选大小。
        参数
        c - 一个组件
        checkIcon - 一个支票图标
        arrowIcon - 一个箭头图标
        defaultTextIconGap - 文本和图标之间的差距
        结果
        菜单项的首选大小
      • paint

        public void paint​(Graphics g,
                          JComponent c)
        描述从类复制: ComponentUI
        适当地涂抹指定的组件的外观和感觉。 当正在绘制指定的组件时,将从ComponentUI.update方法调用此方法。 子类应该覆盖此方法,并使用指定的Graphics对象来呈现组件的内容。
        重写:
        paintComponentUI
        参数
        g - 要绘画的 Graphics上下文
        c - 正在涂漆的部件; 这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
        另请参见:
        ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
      • paintMenuItem

        protected void paintMenuItem​(Graphics g,
                                     JComponent c,
                                     Icon checkIcon,
                                     Icon arrowIcon,
                                     Color background,
                                     Color foreground,
                                     int defaultTextIconGap)
        画一个菜单项。
        参数
        g -实例 Graphics
        c - 一个组件
        checkIcon - 一个支票图标
        arrowIcon - 一个箭头图标
        background - 背景颜色
        foreground - 前景色
        defaultTextIconGap - 文本和图标之间的间隙
      • paintBackground

        protected void paintBackground​(Graphics g,
                                       JMenuItem menuItem,
                                       Color bgColor)
        绘制菜单项的背景。
        参数
        g - 油漆图形
        menuItem - 要画的菜单项
        bgColor - 选择背景颜色
        从以下版本开始:
        1.4
      • paintText

        protected void paintText​(Graphics g,
                                 JMenuItem menuItem,
                                 Rectangle textRect,
                                 String text)
        呈现当前菜单项的文本。
        参数
        g - 图形上下文
        menuItem - 要呈现的菜单项
        textRect - 用于呈现文本的边界矩形
        text - 要呈现的字符串
        从以下版本开始:
        1.4
      • getPath

        public MenuElement[] getPath​()
        返回菜单元素路径。
        结果
        菜单元素路径
      • doClick

        protected void doClick​(MenuSelectionManager msm)
        当菜单项被激活时调用此方法。 此方法处理菜单项激活的一些细节,例如清除所选路径并发送JMenuItem的doClick()方法。
        参数
        msm - MenuSelectionManager。 视觉反馈和内部簿记任务被委派给该MenuSelectionManager。 如果null作为参数传递,则使用MenuSelectionManager.defaultManager
        从以下版本开始:
        1.4
        另请参见:
        MenuSelectionManager, AbstractButton.doClick(int)