Spec-Zone.ru › OpenJDK 17

Класс JMenuBar

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JMenuBar
Все реализуемые интерфейсы:
ImageObserver, MenuContainer, Serializable, Accessible, MenuElement
Непосредственные известные подклассы:
BasicInternalFrameTitlePane.SystemMenuBar
@JavaBean(defaultProperty="UI", description="A container for holding and displaying menus.") public class JMenuBar extends JComponent implements Accessible, MenuElement
Реализация панели меню. Вы добавляете объекты JMenu в панель меню, чтобы создать меню. Когда пользователь выбирает объект JMenu, отображается связанный с ним объект JPopupMenu, позволяющий пользователю выбрать один из элементов JMenuItems на нём.

Для получения информации и примеров использования панелей меню см. Как использовать меню — раздел в учебнике Java.

Предупреждение: Swing не потокобезопасен. Дополнительную информацию см. в Политике потоков Swing.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. С версии 1.4 добавлена поддержка долгосрочного хранения всех объектов JavaBeans в пакете java.beans. См. XMLEncoder.

Предупреждение: По умолчанию нажатие клавиши Tab не переносит фокус с объекта JMenuBar, добавленного в контейнер вместе с другими компонентами Swing, так как свойство focusTraversalKeysEnabled объекта JMenuBar установлено в значение false. Чтобы исправить это, следует вызвать метод JMenuBar.setFocusTraversalKeysEnabled(true).

С:
1.2
См. также:
  • JMenu
  • JPopupMenu
  • JMenuItem

Краткое описание вложенных классов

Модификатор и тип Класс Описание
protected class  JMenuBar.AccessibleJMenuBar
Этот класс реализует поддержку доступности для класса JMenuBar.

Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent

JComponent.AccessibleJComponent

Вложенные классы/интерфейсы, объявленные в классе java.awt.Container

Container.AccessibleAWTContainer

Вложенные классы/интерфейсы, объявленные в классе java.awt.Component

Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy

Краткое описание полей

Поля, объявленные в классе javax.swing.JComponent

listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW

Поля, объявленные в классе java.awt.Component

accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

Поля, объявленные в интерфейсе java.awt.image.ImageObserver

ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH

Краткое описание конструкторов

Конструктор Описание
JMenuBar()
Создаёт новую строку меню.

Краткое описание методов

Модификатор и тип Метод Описание
JMenu add(JMenu c)
Добавляет указанное меню в конец строки меню.
void addNotify()
Переопределяет JComponent.addNotify, чтобы зарегистрировать эту строку меню в текущем диспетчере клавиатуры.
AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JMenuBar.
Component getComponent()
Реализовано как MenuElement.
Component getComponentAtIndex(int i)
Устарело.
заменено на getComponent(int i)
int getComponentIndex(Component c)
Возвращает индекс указанного компонента.
JMenu getHelpMenu()
Получает меню справки для строки меню.
Insets getMargin()
Возвращает отступ между границей строки меню и её элементами меню.
JMenu getMenu(int index)
Возвращает меню по указанному индексу в строке меню.
int getMenuCount()
Возвращает количество элементов в строке меню.
SingleSelectionModel getSelectionModel()
Возвращает объект модели, обрабатывающий одиночные выделения.
MenuElement[] getSubElements()
Реализовано как MenuElement — возвращает меню в этой строке меню.
MenuBarUI getUI()
Возвращает текущее пользовательское интерфейс (UI) строки меню.
String getUIClassID()
Возвращает имя класса L&F, который отрисовывает этот компонент.
boolean isBorderPainted()
Возвращает true, если граница строки меню должна быть отрисована.
boolean isSelected()
Возвращает true, если в данный момент в строке меню выделен какой-либо компонент.
void menuSelectionChanged(boolean isIncluded)
Реализовано как MenuElement — ничего не делает.
protected void paintBorder(Graphics g)
Отрисовывает границу строки меню, если свойство BorderPainted имеет значение true.
protected String paramString()
Возвращает строковое представление этого объекта JMenuBar.
protected boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed)
Переопределено для проверки всех дочерних меню.
void processKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)
Реализовано как MenuElement — ничего не делает.
void processMouseEvent(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)
Реализовано как MenuElement — ничего не делает.
void removeNotify()
Переопределяет JComponent.removeNotify для отмены регистрации этой строки меню в текущем диспетчере клавиатуры.
void setBorderPainted(boolean b)
Устанавливает, должна ли быть отрисована граница.
void setHelpMenu(JMenu menu)
Устанавливает меню справки, которое появляется, когда пользователь выбирает опцию «справка» в строке меню.
void setMargin(Insets m)
Устанавливает отступ между границей строки меню и её элементами меню.
void setSelected(Component sel)
Устанавливает текущий выделенный компонент, что приводит к изменению модели выделения.
void setSelectionModel(SingleSelectionModel model)
Устанавливает объект модели, обрабатывающий одиночные выделения.
void setUI(MenuBarUI ui)
Устанавливает объект L&F, который отрисовывает этот компонент.
void updateUI()
Сбрасывает свойство UI со значением из текущего внешнего вида.

Методы, объявленные в классе javax.swing.JComponent

addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update

Методы, объявленные в классе java.awt.Container

add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree

Методы, объявленные в классе java.awt.Component

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

JMenuBar

public JMenuBar()
Создаёт новую строку меню.

Подробное описание методов

getUI

public MenuBarUI getUI()
Возвращает текущий интерфейс пользователя строки меню.
Overrides:
getUI в классе JComponent
Возвращает:
объект MenuBarUI, представляющий текущий объект L&F строки меню
См. также:
  • setUI(javax.swing.plaf.MenuBarUI)

setUI

@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component\'s LookAndFeel.") public void setUI(MenuBarUI ui)
Устанавливает объект L&F, который отрисовывает этот компонент.
Параметры:
ui - новый объект L&F MenuBarUI
См. также:
  • UIDefaults.getUI(javax.swing.JComponent)

updateUI

public void updateUI()
Сбрасывает свойство UI со значением из текущей темы оформления.
Overrides:
updateUI в классе JComponent
См. также:
  • JComponent.updateUI()

getUIClassID

@BeanProperty(bound=false) public String getUIClassID()
Возвращает имя класса L&F, который отрисовывает этот компонент.
Overrides:
getUIClassID в классе JComponent
Возвращает:
строку "MenuBarUI"
См. также:
  • JComponent.getUIClassID()
  • UIDefaults.getUI(javax.swing.JComponent)

getSelectionModel

public SingleSelectionModel getSelectionModel()
Возвращает объект модели, обрабатывающий одиночные выделения.
Возвращает:
свойство SingleSelectionModel
См. также:
  • SingleSelectionModel

setSelectionModel

@BeanProperty(description="The selection model, recording which child is selected.") public void setSelectionModel(SingleSelectionModel model)
Устанавливает объект модели для обработки одиночных выделений.
Параметры:
model - используемый объект SingleSelectionModel
См. также:
  • SingleSelectionModel

add

public JMenu add(JMenu c)
Добавляет указанное меню в конец строки меню.
Параметры:
c - добавляемый компонент JMenu
Возвращает:
компонент меню

getMenu

public JMenu getMenu(int index)
Возвращает меню по заданной позиции в строке меню.
Параметры:
index - целое число, определяющее позицию в строке меню, где 0 — первая позиция
Возвращает:
JMenu в этой позиции или null, если в этой позиции нет JMenu (например, если это JMenuItem)

getMenuCount

@BeanProperty(bound=false) public int getMenuCount()
Возвращает количество элементов в строке меню.
Возвращает:
количество элементов в строке меню

setHelpMenu

public void setHelpMenu(JMenu menu)
Устанавливает меню справки, которое появляется при выборе опции "справка" в строке меню. Этот метод ещё не реализован и вызовет исключение.
Параметры:
menu - меню JMenu, предоставляющее пользователю справку

getHelpMenu

public JMenu getHelpMenu()
Получает меню справки для строки меню. Этот метод ещё не реализован и вызовет исключение.
Возвращает:
JMenu предоставляющее пользователю справку

getComponentAtIndex

@Deprecated public Component getComponentAtIndex(int i)
Устарело.
заменён на getComponent(int i)
Возвращает компонент по указанному индексу.
Параметры:
i - целое число, определяющее позицию, где 0 — первая
Возвращает:
Component по заданной позиции или null для некорректного индекса

getComponentIndex

public int getComponentIndex(Component c)
Возвращает индекс указанного компонента.
Параметры:
c - искомый Component
Возвращает:
целое число, определяющее позицию компонента, где 0 — первая; или -1, если компонент не найден

setSelected

public void setSelected(Component sel)
Устанавливает текущий выбранный компонент, вызывая изменение в модели выделения.
Параметры:
sel - компонент Component для выбора

isSelected

@BeanProperty(bound=false) public boolean isSelected()
Возвращает true, если в строке меню в данный момент выбран компонент.
Возвращает:
true, если выделение произведено, иначе false

isBorderPainted

public boolean isBorderPainted()
Возвращает true, если граница строки меню должна быть отрисована.
Возвращает:
true, если граница должна быть отрисована, иначе false

setBorderPainted

@BeanProperty(visualUpdate=true, description="Whether the border should be painted.") public void setBorderPainted(boolean b)
Устанавливает, должна ли быть отрисована граница.
Параметры:
b - если true и свойство border не null, граница отрисовывается.
См. также:
  • isBorderPainted()

paintBorder

protected void paintBorder(Graphics g)
Отрисовывает границу строки меню, если свойство BorderPainted равно true.
Overrides:
paintBorder в классе JComponent
Параметры:
g - контекст Graphics для отрисовки
См. также:
  • JComponent.paint(java.awt.Graphics)
  • JComponent.setBorder(javax.swing.border.Border)

setMargin

@BeanProperty(visualUpdate=true, description="The space between the menubar\'s border and its contents") public void setMargin(Insets m)
Устанавливает отступ между границей строки меню и её меню. Установка значения null приведет к использованию стандартных отступов.
Параметры:
m - объект Insets, содержащий значения отступов
См. также:
  • Insets

getMargin

public Insets getMargin()
Возвращает отступ между границей строки меню и её меню. Если отступ не задан, создаётся стандартный отступ с нулевым размером.
Возвращает:
объект Insets с значениями отступов
См. также:
  • Insets

processMouseEvent

public void processMouseEvent(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)
Реализовано как MenuElement — ничего не делает.
Specified by:
processMouseEvent в интерфейсе MenuElement
Параметры:
event - обрабатываемое MouseEvent
path - путь к элементу-получателю в иерархии меню
manager - MenuSelectionManager для иерархии меню
См. также:
  • getSubElements()

processKeyEvent

public void processKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)
Реализовано как MenuElement — ничего не делает.
Specified by:
processKeyEvent в интерфейсе MenuElement
Параметры:
e - обрабатываемое KeyEvent
path - путь к элементу-получателю в иерархии меню
manager - MenuSelectionManager для иерархии меню
См. также:
  • getSubElements()

menuSelectionChanged

public void menuSelectionChanged(boolean isIncluded)
Реализовано как MenuElement — ничего не делает.
Specified by:
menuSelectionChanged в интерфейсе MenuElement
Параметры:
isIncluded - может использоваться для указания, если этот MenuElement активен (если это меню) или находится на части пути меню, которая изменилась (если это элемент меню).
См. также:
  • getSubElements()

getSubElements

@BeanProperty(bound=false) public MenuElement[] getSubElements()
Реализовано как MenuElement — возвращает меню в этой строке меню. Это причина реализации интерфейса MenuElement — чтобы строка меню могла обрабатываться так же, как и другие элементы меню.
Указано в:
getSubElements в интерфейсе MenuElement
Возвращает:
массив элементов меню в строке меню.

getComponent

public Component getComponent()
Реализовано как MenuElement. Возвращает этот объект.
Указано в:
getComponent в интерфейсе MenuElement
Возвращает:
текущий Component (этот)
См. также:
  • getSubElements()

paramString

protected String paramString()
Возвращает строковое представление этого JMenuBar. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться в разных реализациях. Возвращаемая строка может быть пустой, но не null.
Переопределяет:
paramString в классе JComponent
Возвращает:
строковое представление этого JMenuBar

getAccessibleContext

@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этой строкой меню JMenuBar. Для JMenuBars AccessibleContext принимает форму AccessibleJMenuBar. Новый AccessibleJMenuBar создается при необходимости.
Указано в:
getAccessibleContext в интерфейсе Accessible
Переопределяет:
getAccessibleContext в классе Component
Возвращает:
AccessibleJMenuBar, который служит AccessibleContext для этой JMenuBar

processKeyBinding

protected boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed)
Переопределено для проверки всех дочерних меню.
Переопределяет:
processKeyBinding в классе JComponent
Параметры:
ks - запрошенный KeyStroke
e - KeyEvent
condition - одно из следующих значений:
  • JComponent.WHEN_FOCUSED
  • JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
  • JComponent.WHEN_IN_FOCUSED_WINDOW
pressed - true, если нажата клавиша
Возвращает:
true, если была привязка к действию, и действие было разрешено
С:
1.3

addNotify

public void addNotify()
Переопределяет JComponent.addNotify для регистрации этой строки меню с текущим менеджером клавиатуры.
Переопределяет:
addNotify в классе JComponent
См. также:
  • JComponent.registerKeyboardAction(java.awt.event.ActionListener, java.lang.String, javax.swing.KeyStroke, int)

removeNotify

public void removeNotify()
Переопределяет JComponent.removeNotify для отмены регистрации этой строки меню с текущим менеджером клавиатуры.
Переопределяет:
removeNotify в классе JComponent
См. также:
  • JComponent.registerKeyboardAction(java.awt.event.ActionListener, java.lang.String, javax.swing.KeyStroke, int)

© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/javax/swing/JMenuBar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API