Класс BasicMenuItemUI
- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ButtonUI
-
- javax.swing.plaf.MenuItemUI
-
- javax.swing.plaf.basic.BasicMenuItemUI
- Прямые известные подклассы:
- BasicCheckBoxMenuItemUI, BasicMenuUI, BasicRadioButtonMenuItemUI, SynthMenuItemUI
public class BasicMenuItemUI extends MenuItemUI
Реализация BasicMenuItem
Вложенные классы
| Модификатор и тип | Класс и описание |
|---|---|
protected class |
BasicMenuItemUI.MouseInputHandler
|
Поля
| Модификатор и тип | Поле и описание |
|---|---|
protected String |
acceleratorDelimiter Строка-разделитель для акцелеротора, например |
protected Font |
acceleratorFont
|
protected Color |
acceleratorForeground
|
protected Color |
acceleratorSelectionForeground
|
protected Icon |
arrowIcon
|
protected Icon |
checkIcon
|
protected int |
defaultTextIconGap
|
protected Color |
disabledForeground
|
protected MenuDragMouseListener |
menuDragMouseListener
|
protected JMenuItem |
menuItem
|
protected MenuKeyListener |
menuKeyListener
|
protected MouseInputListener |
mouseInputListener
|
protected boolean |
oldBorderPainted
|
protected PropertyChangeListener |
propertyChangeListener
|
protected Color |
selectionBackground
|
protected Color |
selectionForeground
|
Конструкторы
| Конструктор и описание |
|---|
BasicMenuItemUI()
|
Методы
| Модификатор и тип | Метод и описание |
|---|---|
protected MenuDragMouseListener |
createMenuDragMouseListener(JComponent c)
|
protected MenuKeyListener |
createMenuKeyListener(JComponent c)
|
protected MouseInputListener |
createMouseInputListener(JComponent c)
|
protected PropertyChangeListener |
createPropertyChangeListener(JComponent c) Создаёт |
static ComponentUI |
createUI(JComponent c)
|
protected void |
doClick(MenuSelectionManager msm) Вызовите этот метод, когда элемент меню должен быть активирован. |
Dimension |
getMaximumSize(JComponent c) Возвращает максимальный размер указанного компонента, подходящий для темы оформления. |
Dimension |
getMinimumSize(JComponent c) Возвращает минимальный размер указанного компонента, подходящий для темы оформления. |
MenuElement[] |
getPath()
|
protected Dimension |
getPreferredMenuItemSize(JComponent c,
Icon checkIcon,
Icon arrowIcon,
int defaultTextIconGap)
|
Dimension |
getPreferredSize(JComponent c) Возвращает рекомендуемый размер указанного компонента, подходящий для темы оформления. |
protected String |
getPropertyPrefix()
|
protected void |
installComponents(JMenuItem menuItem)
|
protected void |
installDefaults()
|
protected void |
installKeyboardActions()
|
protected void |
installListeners()
|
void |
installUI(JComponent c) Настраивает указанный компонент подходящим образом для темы оформления. |
void |
paint(Graphics g,
JComponent c) Рисует указанный компонент подходящим образом для темы оформления. |
protected void |
paintBackground(Graphics g,
JMenuItem menuItem,
Color bgColor) Рисует фон элемента меню. |
protected void |
paintMenuItem(Graphics g,
JComponent c,
Icon checkIcon,
Icon arrowIcon,
Color background,
Color foreground,
int defaultTextIconGap)
|
protected void |
paintText(Graphics g,
JMenuItem menuItem,
Rectangle textRect,
String text) Отображает текст текущего элемента меню. |
protected void |
uninstallComponents(JMenuItem menuItem)
|
protected void |
uninstallDefaults()
|
protected void |
uninstallKeyboardActions()
|
protected void |
uninstallListeners()
|
void |
uninstallUI(JComponent c) Отменяет настройку, которая была выполнена над указанным компонентом во время |
void |
update(Graphics g,
JComponent c) Мы рисуем фон в paintMenuItem(), поэтому переопределяем update (который по умолчанию заполняет фон непрозрачных компонентов) так, чтобы он просто вызывал paint(). |
Методы, унаследованные от класса javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Поля
menuItem
protected JMenuItem menuItem
фонВыделения
protected Color selectionBackground
цветВыделения
protected Color selectionForeground
цветОтключения
protected Color disabledForeground
цветУскорителя
protected Color acceleratorForeground
цветВыделенияУскорителя
protected Color acceleratorSelectionForeground
разделительУскорителя
protected String acceleratorDelimiter
Строка разделителя ускорителя, например, '+' в 'Ctrl+C'.
- Since:
- 1.7
расстояниеМеждуТекстомИИконкой
protected int defaultTextIconGap
шрифтУскорителя
protected Font acceleratorFont
прослушивательВводаМыши
protected MouseInputListener mouseInputListener
прослушивательПеретаскиванияМеню
protected MenuDragMouseListener menuDragMouseListener
прослушивательНажатийКлавишМеню
protected MenuKeyListener menuKeyListener
прослушивательИзмененийСвойств
protected PropertyChangeListener propertyChangeListener
Возвращаемое значение PropertyChangeListener из createPropertyChangeListener. Вам не нужно обращаться к этому полю, но если вы хотите настроить PropertyChangeListener , переопределите createPropertyChangeListener.
- Since:
- 1.6
- См. также:
createPropertyChangeListener(javax.swing.JComponent)
иконкаСтрелки
protected Icon arrowIcon
иконкаГалочки
protected Icon checkIcon
oldBorderPainted
protected boolean oldBorderPainted
Конструкторы
BasicMenuItemUI
public BasicMenuItemUI()
Методы
createUI
public static ComponentUI createUI(JComponent c)
installUI
public void installUI(JComponent c)
Описание скопировано из класса: ComponentUI
Настраивает указанный компонент в соответствии с внешним видом. Этот метод вызывается, когда экземпляр ComponentUI устанавливается в качестве делегата пользовательского интерфейса для указанного компонента. Этот метод должен полностью настроить компонент для внешнего вида, включая следующее:
- Установка значений свойств по умолчанию для цвета, шрифтов, границ, значков, непрозрачности и т. д. на компоненте. Если возможно, значения свойств, инициализированные программой, не должны перезаписываться.
- Установка
LayoutManagerна компоненте, если необходимо. - Создание/добавление необходимых подкомпонентов в компонент.
- Создание/установка обработчиков событий на компоненте.
- Создание/установка
PropertyChangeListenerна компоненте для правильной обработки изменений свойств компонента. - Установка клавиатурного пользовательского интерфейса (мнемоники, обход и т. д.) на компоненте.
- Инициализация всех соответствующих данных экземпляра.
- Переопределяет:
-
installUIв классеComponentUI - Параметры:
-
c- компонент, на котором устанавливается этот делегат пользовательского интерфейса - См. также:
-
ComponentUI.uninstallUI(javax.swing.JComponent),JComponent.setUI(javax.swing.plaf.ComponentUI),JComponent.updateUI()
installDefaults
protected void installDefaults()
installComponents
protected void installComponents(JMenuItem menuItem)
- Since:
- 1.3
getPropertyPrefix
protected String getPropertyPrefix()
installListeners
protected void installListeners()
installKeyboardActions
protected void installKeyboardActions()
uninstallUI
public void uninstallUI(JComponent c)
Описание скопировано из класса: ComponentUI
Отменяет настройки, выполненные для указанного компонента во время installUI. Этот метод вызывается, когда этот экземпляр UIComponent удаляется в качестве делегата пользовательского интерфейса для указанного компонента. Этот метод должен отменить конфигурацию, выполненную в installUI, тщательно сохраняя экземпляр JComponent в чистом состоянии (без лишних обработчиков, специфичных для внешнего вида объектов свойств и т. д.). Это должно включать следующее:
- Удаление всех границ, установленных пользовательским интерфейсом, из компонента.
- Удаление всех менеджеров компоновки, установленных пользовательским интерфейсом, из компонента.
- Удаление всех подкомпонентов, добавленных пользовательским интерфейсом, из компонента.
- Удаление всех обработчиков событий/свойств, добавленных пользовательским интерфейсом, из компонента.
- Удаление всех клавиатурных пользовательских интерфейсов, установленных пользовательским интерфейсом, из компонента.
- Сброс всех выделенных объектов данных экземпляра для освобождения памяти.
- Переопределяет:
-
uninstallUIв классеComponentUI - Параметры:
-
c- компонент, из которого удаляется этот делегат пользовательского интерфейса; этот аргумент часто игнорируется, но может использоваться, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - См. также:
-
ComponentUI.installUI(javax.swing.JComponent),JComponent.updateUI()
uninstallDefaults
protected void uninstallDefaults()
uninstallComponents
protected void uninstallComponents(JMenuItem menuItem)
- Since:
- 1.3
uninstallListeners
protected void uninstallListeners()
uninstallKeyboardActions
protected void uninstallKeyboardActions()
создатьОбработчикВводаМыши
protected MouseInputListener createMouseInputListener(JComponent c)
создатьОбработчикПеретаскиванияМеню
protected MenuDragMouseListener createMenuDragMouseListener(JComponent c)
создатьОбработчикНажатийКлавишМеню
protected MenuKeyListener createMenuKeyListener(JComponent c)
создатьОбработчикИзмененийСвойств
protected PropertyChangeListener createPropertyChangeListener(JComponent c)
Создаёт PropertyChangeListener, который будет добавлен к элементу меню. Если этот метод возвращает null, то он не будет добавлен к элементу меню.
- Возвращает:
- экземпляр
PropertyChangeListenerили null - Since:
- 1.6
getMinimumSize
public Dimension getMinimumSize(JComponent c)
Описание скопировано из класса: ComponentUI
Возвращает минимальный размер указанного компонента, соответствующий внешнему виду. Если возвращается null, минимальный размер будет вычислен менеджером компоновки компонента (это предпочтительный подход для любого компонента с установленным конкретным менеджером компоновки). Реализация по умолчанию этого метода вызывает getPreferredSize и возвращает это значение.
- Переопределяет:
-
getMinimumSizeв классеComponentUI - Параметры:
-
c- компонент, минимальный размер которого запрашивается; этот аргумент часто игнорируется, но может использоваться, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - Возвращает:
- объект
Dimensionилиnull - См. также:
-
JComponent.getMinimumSize(),LayoutManager.minimumLayoutSize(java.awt.Container),ComponentUI.getPreferredSize(javax.swing.JComponent)
getPreferredSize
public Dimension getPreferredSize(JComponent c)
Описание скопировано из класса: ComponentUI
Возвращает предпочтительный размер указанного компонента, соответствующий внешнему виду. Если возвращается null, предпочтительный размер будет вычислен менеджером компоновки компонента (это предпочтительный подход для любого компонента с установленным конкретным менеджером компоновки). Реализация по умолчанию этого метода возвращает null.
- Переопределяет:
-
getPreferredSizeв классеComponentUI - Параметры:
-
c- компонент, предпочтительный размер которого запрашивается; этот аргумент часто игнорируется, но может использоваться, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - См. также:
-
JComponent.getPreferredSize(),LayoutManager.preferredLayoutSize(java.awt.Container)
getMaximumSize
public Dimension getMaximumSize(JComponent c)
Описание скопировано из класса: ComponentUI
Возвращает максимальный размер указанного компонента, соответствующий внешнему виду. Если возвращается null, максимальный размер будет вычислен менеджером компоновки компонента (это предпочтительный подход для любого компонента с установленным конкретным менеджером компоновки). Реализация по умолчанию этого метода вызывает getPreferredSize и возвращает это значение.
- Переопределяет:
-
getMaximumSizeв классеComponentUI - Параметры:
-
c- компонент, максимальный размер которого запрашивается; этот аргумент часто игнорируется, но может использоваться, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - Возвращает:
- объект
Dimensionилиnull - См. также:
-
JComponent.getMaximumSize(),LayoutManager2.maximumLayoutSize(java.awt.Container)
получитьПредпочитаемыйРазмерЭлементаМеню
protected Dimension getPreferredMenuItemSize(JComponent c,
Icon checkIcon,
Icon arrowIcon,
int defaultTextIconGap) update
public void update(Graphics g,
JComponent c) Мы рисуем фон в paintMenuItem(), поэтому переопределяем update (который по умолчанию заполняет фон непрозрачных компонентов), чтобы просто вызвать paint().
- Переопределяет:
-
updateв классеComponentUI - Параметры:
-
g- контекстGraphicsдля рисования -
c- компонент, который рисуется; этот аргумент часто игнорируется, но может использоваться, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - См. также:
-
ComponentUI.paint(java.awt.Graphics, javax.swing.JComponent),JComponent.paintComponent(java.awt.Graphics)
paint
public void paint(Graphics g,
JComponent c) Описание скопировано из класса: ComponentUI
Отображает указанный компонент соответствующим образом для внешнего вида и ощущения. Этот метод вызывается из метода ComponentUI.update, когда указанный компонент отрисовывается. Подклассы должны переопределять этот метод и использовать указанный объект Graphics, чтобы отобразить содержимое компонента.
- Overrides:
-
paintв классеComponentUI - Параметры:
-
g- контекстGraphics, в котором необходимо выполнить отрисовку -
c- компонент, который отрисовывается; этот аргумент часто игнорируется, но может использоваться, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - См. также:
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) 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)
Вызовите этот метод, когда необходимо активировать пункт меню. Этот метод обрабатывает некоторые детали активации пункта меню, такие как очистка выбранного пути и сообщение метода doClick() пункта меню JMenuItem.
- Параметры:
-
msm- объект MenuSelectionManager. Задачи визуальной обратной связи и внутренней обработки делегированы этому MenuSelectionManager. Еслиnullпередаётся в качестве этого аргумента, используетсяMenuSelectionManager.defaultManager. - С:
- 1.4
- См. также:
-
MenuSelectionManager,AbstractButton.doClick(int)
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.