Класс 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
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
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 |
Добавляет указанное меню в конец строки меню. |
void |
addNotify() |
Переопределяет JComponent.addNotify, чтобы зарегистрировать эту строку меню в текущем диспетчере клавиатуры. |
AccessibleContext |
getAccessibleContext() |
Получает AccessibleContext, связанный с этим JMenuBar. |
Component |
getComponent() |
Реализовано как MenuElement. |
Component |
getComponentAtIndex |
Устарело. |
int |
getComponentIndex |
Возвращает индекс указанного компонента. |
JMenu |
getHelpMenu() |
Получает меню справки для строки меню. |
Insets |
getMargin() |
Возвращает отступ между границей строки меню и её элементами меню. |
JMenu |
getMenu |
Возвращает меню по указанному индексу в строке меню. |
int |
getMenuCount() |
Возвращает количество элементов в строке меню. |
SingleSelectionModel |
getSelectionModel() |
Возвращает объект модели, обрабатывающий одиночные выделения. |
MenuElement[] |
getSubElements() |
Реализовано как MenuElement — возвращает меню в этой строке меню. |
MenuBarUI |
getUI() |
Возвращает текущее пользовательское интерфейс (UI) строки меню. |
String |
getUIClassID() |
Возвращает имя класса L&F, который отрисовывает этот компонент. |
boolean |
isBorderPainted() |
Возвращает true, если граница строки меню должна быть отрисована. |
boolean |
isSelected() |
Возвращает true, если в данный момент в строке меню выделен какой-либо компонент. |
void |
menuSelectionChanged |
Реализовано как MenuElement — ничего не делает. |
protected void |
paintBorder |
Отрисовывает границу строки меню, если свойство BorderPainted имеет значение true. |
protected String |
paramString() |
Возвращает строковое представление этого объекта JMenuBar. |
protected boolean |
processKeyBinding |
Переопределено для проверки всех дочерних меню. |
void |
processKeyEvent |
Реализовано как MenuElement — ничего не делает. |
void |
processMouseEvent |
Реализовано как MenuElement — ничего не делает. |
void |
removeNotify() |
Переопределяет JComponent.removeNotify для отмены регистрации этой строки меню в текущем диспетчере клавиатуры. |
void |
setBorderPainted |
Устанавливает, должна ли быть отрисована граница. |
void |
setHelpMenu |
Устанавливает меню справки, которое появляется, когда пользователь выбирает опцию «справка» в строке меню. |
void |
setMargin |
Устанавливает отступ между границей строки меню и её элементами меню. |
void |
setSelected |
Устанавливает текущий выделенный компонент, что приводит к изменению модели выделения. |
void |
setSelectionModel |
Устанавливает объект модели, обрабатывающий одиночные выделения. |
void |
setUI |
Устанавливает объект 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
Подробное описание конструкторов
JMenuBar
public JMenuBar()
Подробное описание методов
getUI
public MenuBarUI getUI()
- Overrides:
-
getUIв классеJComponent - Возвращает:
- объект
MenuBarUI, представляющий текущий объект L&F строки меню - См. также:
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component\'s LookAndFeel.") public void setUI(MenuBarUI ui)
- Параметры:
-
ui- новый объект L&F MenuBarUI - См. также:
updateUI
public void updateUI()
- Overrides:
-
updateUIв классеJComponent - См. также:
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
- Overrides:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "MenuBarUI"
- См. также:
getSelectionModel
public SingleSelectionModel getSelectionModel()
- Возвращает:
- свойство
SingleSelectionModel - См. также:
setSelectionModel
@BeanProperty(description="The selection model, recording which child is selected.") public void setSelectionModel(SingleSelectionModel model)
- Параметры:
-
model- используемый объект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, если выделение произведено, иначе false
isBorderPainted
public boolean isBorderPainted()
- Возвращает:
- true, если граница должна быть отрисована, иначе false
setBorderPainted
@BeanProperty(visualUpdate=true, description="Whether the border should be painted.") public void setBorderPainted(boolean b)
- Параметры:
-
b- если true и свойство border неnull, граница отрисовывается. - См. также:
paintBorder
protected void paintBorder(Graphics g)
BorderPainted равно true.- Overrides:
-
paintBorderв классеJComponent - Параметры:
-
g- контекстGraphicsдля отрисовки - См. также:
setMargin
@BeanProperty(visualUpdate=true, description="The space between the menubar\'s border and its contents") public void setMargin(Insets m)
null приведет к использованию стандартных отступов.- Параметры:
-
m- объект Insets, содержащий значения отступов - См. также:
getMargin
public Insets getMargin()
- Возвращает:
- объект
Insetsс значениями отступов - См. также:
processMouseEvent
public void processMouseEvent(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)
MenuElement — ничего не делает.- Specified by:
-
processMouseEventв интерфейсеMenuElement - Параметры:
-
event- обрабатываемоеMouseEvent -
path- путь к элементу-получателю в иерархии меню -
manager-MenuSelectionManagerдля иерархии меню - См. также:
processKeyEvent
public void processKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)
MenuElement — ничего не делает.- Specified by:
-
processKeyEventв интерфейсеMenuElement - Параметры:
-
e- обрабатываемоеKeyEvent -
path- путь к элементу-получателю в иерархии меню -
manager-MenuSelectionManagerдля иерархии меню - См. также:
getSubElements
@BeanProperty(bound=false) public MenuElement[] getSubElements()
MenuElement — возвращает меню в этой строке меню. Это причина реализации интерфейса MenuElement — чтобы строка меню могла обрабатываться так же, как и другие элементы меню.- Указано в:
-
getSubElementsв интерфейсеMenuElement - Возвращает:
- массив элементов меню в строке меню.
getComponent
public Component getComponent()
MenuElement. Возвращает этот объект.- Указано в:
-
getComponentв интерфейсеMenuElement - Возвращает:
- текущий
Component(этот) - См. также:
paramString
protected String paramString()
JMenuBar. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться в разных реализациях. Возвращаемая строка может быть пустой, но не null.- Переопределяет:
-
paramStringв классеJComponent - Возвращает:
- строковое представление этого
JMenuBar
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
- Указано в:
-
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 - См. также:
removeNotify
public void removeNotify()
JComponent.removeNotify для отмены регистрации этой строки меню с текущим менеджером клавиатуры.- Переопределяет:
-
removeNotifyв классеJComponent - См. также:
© 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
getComponent(int i)