Класс JMenu

Все реализованные интерфейсы:
ImageObserver, ItemSelectable, MenuContainer, Serializable, Accessible, MenuElement, SwingConstants
@JavaBean(description="A popup window containing menu items displayed in a menu bar.")
public class JMenu
extends JMenuItem
implements Accessible, MenuElement

Реализация меню — всплывающего окна, содержащего JMenuItem, которое отображается при выборе элемента в JMenuBar. Помимо JMenuItem, меню также может содержать JSeparator.

По сути, меню — это кнопка с ассоциированным JPopupMenu. При нажатии на «кнопку» появляется JPopupMenu. Если «кнопка» расположена в JMenuBar, меню является окном верхнего уровня. Если «кнопка» — другой элемент меню, то меню — «всплывающее» меню.

Меню можно настроить и, в некоторой степени, управлять с помощью Action. Использование Action с меню предоставляет больше возможностей, чем непосредственная настройка меню. Дополнительные сведения см. в разделе Swing-компоненты, поддерживающие Action, а также в Руководстве по работе с действиями в Java Tutorial.

Дополнительную информацию и примеры использования меню см. в разделе Руководство по работе с меню в Java Tutorial.

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

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

С:
1.2
См. также:
JMenuItem, JSeparator, JMenuBar, JPopupMenu, Сериализованная форма

Вложенные классы

Модификатор и тип Класс Описание
protected class  JMenu.AccessibleJMenu

Этот класс реализует поддержку доступности для класса JMenu.

protected class  JMenu.WinListener

Класс-слушатель, отслеживающий закрытие всплывающего окна.

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

JMenuItem.AccessibleJMenuItem

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

AbstractButton.AccessibleAbstractButton, AbstractButton.ButtonChangeListener

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

JComponent.AccessibleJComponent

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

Container.AccessibleAWTContainer

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

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

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

Модификатор и тип Поле Описание
protected JMenu.WinListener popupListener

Слушатель закрытия окна для всплывающего меню.

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

actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY

Поля, объявленные в классе 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

Поля, объявленные в интерфейсе javax.swing.SwingConstants

BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST

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

Конструктор Описание
JMenu()

Создает новое JMenu без текста.

JMenu​(String s)

Создает новое JMenu с заданным текстом.

JMenu​(String s, boolean b)

Создает новое JMenu с заданным текстом и указанием, является ли это меню отрываемым.

JMenu​(Action a)

Создает меню, свойства которого взяты из переданного Action.

Методы

Модификатор и тип Метод Описание
Component add​(Component c)

Добавляет компонент в конец этого меню.

Component add​(Component c, int index)

Добавляет указанный компонент в этот контейнер в заданной позиции.

JMenuItem add​(String s)

Создаёт новую пункт меню с указанным текстом и добавляет его в конец этого меню.

JMenuItem add​(Action a)

Создаёт новый пункт меню, прикреплённый к указанному Action объекту, и добавляет его в конец этого меню.

JMenuItem add​(JMenuItem menuItem)

Добавляет пункт меню в конец этого меню.

void addMenuListener​(MenuListener l)

Добавляет обработчик событий меню.

void addSeparator()

Добавляет новый разделитель в конец меню.

void applyComponentOrientation​(ComponentOrientation o)

Устанавливает свойство ComponentOrientation этого меню и всех содержащихся в нём компонентов.

protected PropertyChangeListener createActionChangeListener​(JMenuItem b)

Возвращает правильно настроенный PropertyChangeListener, который обновляет элемент управления при изменении Action.

protected JMenuItem createActionComponent​(Action a)

Метод-фабрика, который создаёт JMenuItem для Action добавленных в JMenu.

protected JMenu.WinListener createWinListener​(JPopupMenu p)

Создаёт обработчик закрытия окна всплывающего меню.

void doClick​(int pressTime)

Программно выполняет "нажатие" по элементу.

protected void fireMenuCanceled()

Уведомляет всех слушателей, которые проявили интерес к получению уведомлений об этом типе события.

protected void fireMenuDeselected()

Уведомляет всех слушателей, которые проявили интерес к получению уведомлений об этом типе события.

protected void fireMenuSelected()

Уведомляет всех слушателей, которые проявили интерес к получению уведомлений об этом типе события.

AccessibleContext getAccessibleContext()

Получает AccessibleContext, связанный с этим JMenu.

Component getComponent()

Возвращает java.awt.Component используемый для отрисовки этого MenuElement.

int getDelay()

Возвращает рекомендуемую задержку в миллисекундах, перед раскрытием или сворачиванием подменю.

JMenuItem getItem​(int pos)

Возвращает JMenuItem в заданной позиции.

int getItemCount()

Возвращает количество элементов в меню, включая разделители.

Component getMenuComponent​(int n)

Возвращает компонент в позиции n.

int getMenuComponentCount()

Возвращает количество компонентов в меню.

Component[] getMenuComponents()

Возвращает массив Component подкомпонентов меню.

MenuListener[] getMenuListeners()

Возвращает массив всех MenuListener добавленных в этот JMenu с помощью addMenuListener().

JPopupMenu getPopupMenu()

Возвращает всплывающее меню, связанное с этим меню.

protected Point getPopupMenuOrigin()

Вычисляет начальную точку для всплывающего меню JMenu.

MenuElement[] getSubElements()

Возвращает массив MenuElement содержащий подменю для этого компонента меню.

String getUIClassID()

Возвращает имя класса L&F, который отрисовывает этот компонент.

void insert​(String s, int pos)

Вставляет новый пункт меню с указанным текстом в заданную позицию.

JMenuItem insert​(Action a, int pos)

Вставляет новый пункт меню, прикрепленный к указанному Action объекту, в заданную позицию.

JMenuItem insert​(JMenuItem mi, int pos)

Вставляет указанный JMenuitem в заданную позицию.

void insertSeparator​(int index)

Вставляет разделитель в заданную позицию.

boolean isMenuComponent​(Component c)

Возвращает true, если указанный компонент существует в иерархии подменю.

boolean isPopupMenuVisible()

Возвращает true, если всплывающее окно меню отображается.

boolean isSelected()

Возвращает true, если меню в настоящее время выбрано (выделено).

boolean isTearOff()

Возвращает true, если меню можно отделить.

boolean isTopLevelMenu()

Возвращает true, если меню является 'главным меню', то есть является непосредственным потомком строчки меню.

void menuSelectionChanged​(boolean isIncluded)

Получает сообщение при изменении выбора в строке меню для активации или деактивации этого меню.

protected String paramString()

Возвращает строковое представление этого JMenu.

protected void processKeyEvent​(KeyEvent evt)

Обрабатывает события нажатия клавиш, такие как мнемоники и ускорители.

void remove​(int pos)

Удаляет пункт меню в указанном индексе из этого меню.

void remove​(Component c)

Удаляет компонент c из этого меню.

void remove​(JMenuItem item)

Удаляет указанный пункт меню из этого меню.

void removeAll()

Удаляет все пункты меню из этого меню.

void removeMenuListener​(MenuListener l)

Удаляет обработчик событий меню.

void setAccelerator​(KeyStroke keyStroke)

setAccelerator не определено для JMenu.

void setDelay​(int d)

Устанавливает рекомендуемую задержку перед раскрытием или сворачиванием PopupMenu меню.

void setMenuLocation​(int x, int y)

Устанавливает расположение всплывающего компонента.

void setModel​(ButtonModel newModel)

Устанавливает модель данных для "кнопки меню" — метки, которую пользователь нажимает для открытия или закрытия меню.

void setPopupMenuVisible​(boolean b)

Устанавливает видимость всплывающего окна меню.

void setSelected​(boolean b)

Устанавливает состояние выбора меню.

void updateUI()

Сбрасывает свойство пользовательского интерфейса со значением из текущей темы оформления.

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

actionPropertyChanged, addMenuDragMouseListener, addMenuKeyListener, configurePropertiesFromAction, fireMenuDragMouseDragged, fireMenuDragMouseEntered, fireMenuDragMouseExited, fireMenuDragMouseReleased, fireMenuKeyPressed, fireMenuKeyReleased, fireMenuKeyTyped, getAccelerator, getMenuDragMouseListeners, getMenuKeyListeners, init, isArmed, processKeyEvent, processMenuDragMouseEvent, processMenuKeyEvent, processMouseEvent, removeMenuDragMouseListener, removeMenuKeyListener, setArmed, setEnabled, setUI

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

addActionListener, addChangeListener, addImpl, addItemListener, checkHorizontalKey, checkVerticalKey, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, fireActionPerformed, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHideActionText, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, imageUpdate, isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, paintBorder, removeActionListener, removeChangeListener, removeItemListener, removeNotify, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setFocusPainted, setHideActionText, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition

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

addAncestorListener, addNotify, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, 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, 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, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, 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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, 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, hide, 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

Методы, объявленные в интерфейсе javax.swing.MenuElement

processKeyEvent, processMouseEvent

Поля

popupListener

protected JMenu.WinListener popupListener

Слушатель закрытия окна всплывающего меню.

См. также:
JMenu.WinListener

Конструкторы

JMenu

public JMenu()

Создает новый JMenu без текста.

JMenu

public JMenu(String s)

Создает новый JMenu со строкой в качестве текста.

Параметры:
s - текст для метки меню

JMenu

public JMenu(Action a)

Создает меню, свойства которого взяты из предоставленного Action.

Параметры:
a - действие Action
С тех пор:
1.3

JMenu

public JMenu(String s,
             boolean b)

Создает новый JMenu со строкой в качестве текста и указанием, является ли это меню открепляемым.

Параметры:
s - текст для метки меню
b - можно ли открепить меню (еще не реализовано)

Методы

updateUI

public void updateUI()

Сбрасывает свойство UI со значением из текущего внешнего вида.

Переопределяет:
updateUI в классе JMenuItem
См. также:
JComponent.updateUI()

getUIClassID

@BeanProperty(bound=false)
public String getUIClassID()

Возвращает имя класса L&F, который отображает этот компонент.

Переопределяет:
getUIClassID в классе JMenuItem
Возвращает:
строку "MenuUI"
См. также:
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)

setModel

public void setModel(ButtonModel newModel)

Устанавливает модель данных для «кнопки меню» — метки, которую пользователь нажимает, чтобы открыть или закрыть меню.

Переопределяет:
setModel в классе AbstractButton
Параметры:
newModel - ButtonModel
См. также:
AbstractButton.getModel()

isSelected

public boolean isSelected()

Возвращает true, если меню в данный момент выбрано (подсвечено).

Переопределяет:
isSelected в классе AbstractButton
Возвращает:
true, если меню выбрано, иначе false

setSelected

@BeanProperty(expert=true,
              hidden=true,
              description="When the menu is selected, its popup child is shown.")
public void setSelected(boolean b)

Устанавливает статус выбора меню.

Переопределяет:
setSelected в классе AbstractButton
Параметры:
b - true для выбора (подсветки) меню; false для отмены выбора меню

isPopupMenuVisible

public boolean isPopupMenuVisible()

Возвращает true, если всплывающее окно меню отображается.

Возвращает:
true, если меню отображается, иначе false

setPopupMenuVisible

@BeanProperty(bound=false,
              expert=true,
              hidden=true,
              description="The popup menu\'s visibility")
public void setPopupMenuVisible(boolean b)

Устанавливает видимость всплывающего меню. Если меню не включено, этот метод не будет иметь никакого эффекта.

Параметры:
b - булево значение — true, чтобы сделать меню видимым, false, чтобы скрыть его

getPopupMenuOrigin

protected Point getPopupMenuOrigin()

Вычисляет начало координат для всплывающего меню JMenu. Этот метод использует свойства внешнего вида, названные Menu.menuPopupOffsetX, Menu.menuPopupOffsetY, Menu.submenuPopupOffsetX и Menu.submenuPopupOffsetY, чтобы настроить точное местоположение всплывающего окна.

Возвращает:
Point в системе координат меню, которое следует использовать в качестве начала координат всплывающего меню JMenu
С версии:
1.3

getDelay

public int getDelay()

Возвращает предлагаемую задержку, в миллисекундах, прежде чем подменю будут появляться или исчезать. Каждый внешний вид (L&F) может определить свою собственную политику наблюдения за свойством delay. В большинстве случаев задержка не соблюдается для меню верхнего уровня или во время перетаскивания. Значение по умолчанию для delay равно 0. Этот метод является свойством кода внешнего вида и используется для управления особенностями различных реализаций пользовательского интерфейса.

Возвращает:
свойство delay

setDelay

@BeanProperty(bound=false,
              expert=true,
              description="The delay between menu selection and making the popup menu visible")
public void setDelay(int d)

Устанавливает предлагаемую задержку перед тем, как PopupMenu меню появится или исчезнет. Каждый внешний вид (L&F) может определить свою собственную политику наблюдения за свойством задержки. В большинстве случаев задержка не соблюдается для меню верхнего уровня или во время перетаскивания. Этот метод является свойством кода внешнего вида и используется для управления особенностями различных реализаций пользовательского интерфейса.

Параметры:
d - количество миллисекунд для задержки
Исключения:
IllegalArgumentException - если d меньше 0

setMenuLocation

public void setMenuLocation(int x,
                            int y)

Устанавливает положение всплывающего компонента.

Параметры:
x - координата x нового положения всплывающего окна
y - координата y нового положения всплывающего окна

add

public JMenuItem add(JMenuItem menuItem)

Добавляет элемент меню в конец этого меню. Возвращает добавленный элемент меню.

Параметры:
menuItem - JMenuitem, который нужно добавить
Возвращает:
добавленный JMenuItem

add

public Component add(Component c)

Добавляет компонент в конец этого меню. Возвращает добавленный компонент.

Переопределяет:
add в классе Container
Параметры:
c - Component, который нужно добавить
Возвращает:
добавленный Component
См. также:
Container.addImpl(java.awt.Component, java.lang.Object, int), Container.invalidate(), Container.validate(), JComponent.revalidate()

add

public Component add(Component c,
                     int index)

Добавляет указанный компонент в этот контейнер в заданную позицию. Если index равно -1, компонент будет добавлен в конец.

Переопределяет:
add в классе Container
Параметры:
c - Component, который нужно добавить
index - позиция, в которую нужно вставить компонент
Возвращает:
добавленный Component
См. также:
remove(javax.swing.JMenuItem), Container.add(Component, int)

add

public JMenuItem add(String s)

Создает новый элемент меню с указанным текстом и добавляет его в конец этого меню.

Параметры:
s - строка для добавляемого элемента меню
Возвращает:
новый JMenuItem

add

public JMenuItem add(Action a)

Создает новый элемент меню, прикрепленный к указанному объекту Action, и добавляет его в конец этого меню.

Параметры:
a - Action для добавляемого элемента меню
Возвращает:
новый JMenuItem
См. также:
Action

createActionComponent

protected JMenuItem createActionComponent(Action a)

Метод-фабрика, который создает JMenuItem для Action, добавленных в JMenu.

Параметры:
a - Action для добавляемого элемента меню
Возвращает:
новый элемент меню
С версии:
1.3
См. также:
Action

createActionChangeListener

protected PropertyChangeListener createActionChangeListener(JMenuItem b)

Возвращает правильно настроенный PropertyChangeListener, который обновляет элемент управления по мере изменения Action.

Параметры:
b - элемент меню, для которого нужно создать PropertyChangeListener
Возвращает:
PropertyChangeListener для b

addSeparator

public void addSeparator()

Добавляет новый разделитель в конец меню.

insert

public void insert(String s,
                   int pos)

Вставляет новый элемент меню с указанным текстом в заданную позицию.

Параметры:
s - текст для добавляемого элемента меню
pos - целое число, указывающее позицию, в которую нужно добавить новый элемент меню
Исключения:
IllegalArgumentException - когда значение pos < 0

insert

public JMenuItem insert(JMenuItem mi,
                        int pos)

Вставляет указанный JMenuitem в заданную позицию.

Параметры:
mi - JMenuitem, который нужно добавить
pos - целое число, указывающее позицию, в которую нужно добавить новый JMenuitem
Возвращает:
новый элемент меню
Исключения:
IllegalArgumentException - если значение pos < 0

insert

public JMenuItem insert(Action a,
                        int pos)

Вставляет новый элемент меню, прикрепленный к указанному объекту Action, в заданную позицию.

Параметры:
a - объект Action для добавляемого элемента меню
pos - целое число, указывающее позицию, в которую нужно добавить новый элемент меню
Возвращает:
новый элемент меню
Исключения:
IllegalArgumentException - если значение pos < 0

insertSeparator

public void insertSeparator(int index)

Вставляет разделитель в указанную позицию.

Параметры:
index - целое число, указывающее позицию, в которую нужно вставить разделитель меню
Исключения:
IllegalArgumentException - если значение index < 0

getItem

public JMenuItem getItem(int pos)

Возвращает JMenuItem в указанной позиции. Если компонент в pos не является элементом меню, возвращается null. Этот метод включен для совместимости с AWT.

Параметры:
pos - целое число, указывающее позицию
Возвращает:
элемент меню в указанной позиции; или null, если элемент в указанной позиции не является элементом меню
Исключения:
IllegalArgumentException - если значение pos < 0

getItemCount

@BeanProperty(bound=false)
public int getItemCount()

Возвращает количество элементов в меню, включая разделители. Этот метод включен для совместимости с AWT.

Возвращает:
целое число, равное количеству элементов в меню
См. также:
getMenuComponentCount()

isTearOff

@BeanProperty(bound=false)
public boolean isTearOff()

Возвращает true, если меню может быть откреплено. Этот метод еще не реализован.

Возвращает:
true, если меню может быть откреплено, иначе false
Исключения:
Error - если вызывается — этот метод еще не реализован

remove

public void remove(JMenuItem item)

Удаляет указанный пункт меню из этого меню. Если всплывающего меню нет, этот метод не повлияет.

Parameters:
item - удаляемый JMenuItem из меню

remove

public void remove(int pos)

Удаляет элемент меню по указанному индексу из этого меню.

Overrides:
remove в классе Container
Parameters:
pos - позиция удаляемого элемента
Throws:
IllegalArgumentException - если значение pos < 0 или если pos больше числа элементов меню
See Also:
Container.add(java.awt.Component), Container.invalidate(), Container.validate(), Container.getComponentCount()

remove

public void remove(Component c)

Удаляет компонент c из этого меню.

Overrides:
remove в классе Container
Parameters:
c - удаляемый компонент
See Also:
Container.add(java.awt.Component), Container.invalidate(), Container.validate(), Container.remove(int)

removeAll

public void removeAll()

Удаляет все элементы меню из этого меню.

Overrides:
removeAll в классе Container
See Also:
Container.add(java.awt.Component), Container.remove(int), Container.invalidate()

getMenuComponentCount

@BeanProperty(bound=false)
public int getMenuComponentCount()

Возвращает количество компонентов в меню.

Returns:
целое число, содержащее количество компонентов в меню

getMenuComponent

public Component getMenuComponent(int n)

Возвращает компонент в позиции n.

Parameters:
n - позиция возвращаемого компонента
Returns:
запрошенный компонент или null если всплывающего меню нет

getMenuComponents

@BeanProperty(bound=false)
public Component[] getMenuComponents()

Возвращает массив Component подкомпонентов меню. Обратите внимание, что это возвращает все Component в всплывающем меню, включая разделители.

Returns:
массив Component или пустой массив, если всплывающего меню нет

isTopLevelMenu

@BeanProperty(bound=false)
public boolean isTopLevelMenu()

Возвращает true, если меню является 'главным меню', то есть если оно является непосредственным потомком панели меню.

Returns:
true, если меню активировано из панели меню; false, если меню активировано из пункта меню другого меню

isMenuComponent

public boolean isMenuComponent(Component c)

Возвращает true, если указанный компонент существует в иерархии подменю.

Parameters:
c - проверяемый Component
Returns:
true, если Component существует, иначе false

getPopupMenu

@BeanProperty(bound=false)
public JPopupMenu getPopupMenu()

Возвращает всплывающее меню, связанное с этим меню. Если всплывающего меню нет, оно создаст его.

Returns:
всплывающее меню, связанное с этим меню

addMenuListener

public void addMenuListener(MenuListener l)

Добавляет слушателя событий меню.

Parameters:
l - добавляемый слушатель

removeMenuListener

public void removeMenuListener(MenuListener l)

Удаляет слушателя событий меню.

Parameters:
l - удаляемый слушатель

getMenuListeners

@BeanProperty(bound=false)
public MenuListener[] getMenuListeners()

Возвращает массив всех MenuListener добавленных к этому JMenu с помощью addMenuListener().

Returns:
все MenuListener добавленные или пустой массив, если слушатели не были добавлены
Since:
1.4

fireMenuSelected

protected void fireMenuSelected()

Уведомляет всех слушателей, зарегистрировавших интерес к уведомлению об этом типе события. Экземпляр события создается лениво.

Throws:
Error - если есть null слушатель
See Also:
EventListenerList

fireMenuDeselected

protected void fireMenuDeselected()

Уведомляет всех слушателей, зарегистрировавших интерес к уведомлению об этом типе события. Экземпляр события создается лениво.

Throws:
Error - если есть null слушатель
See Also:
EventListenerList

fireMenuCanceled

protected void fireMenuCanceled()

Уведомляет всех слушателей, зарегистрировавших интерес к уведомлению об этом типе события. Экземпляр события создается лениво.

Throws:
Error - если есть null слушатель
See Also:
EventListenerList

createWinListener

protected JMenu.WinListener createWinListener(JPopupMenu p)

Создаёт слушатель закрытия окна для всплывающего меню.

Parameters:
p - всплывающее JPopupMenu
Returns:
новый слушатель закрытия окна
See Also:
JMenu.WinListener
public void menuSelectionChanged(boolean isIncluded)

Получает сообщение, когда выбор в панели меню изменяется, чтобы активировать или деактивировать это меню. Переопределяет JMenuItem.menuSelectionChanged.

Specified by:
menuSelectionChanged в интерфейсе MenuElement
Overrides:
menuSelectionChanged в классе JMenuItem
Parameters:
isIncluded - true, если это меню активно, false - если нет
See Also:
MenuSelectionManager.setSelectedPath(MenuElement[])

getSubElements

@BeanProperty(bound=false)
public MenuElement[] getSubElements()

Возвращает массив MenuElement содержащий подменю для этого компонента меню. Если всплывающего меню нет, возвращает пустой массив. Этот метод необходим для соответствия интерфейсу MenuElement. Обратите внимание, что так как JSeparator не соответствуют интерфейсу MenuElement, этот массив будет содержать только JMenuItem.

Specified by:
getSubElements в интерфейсе MenuElement
Overrides:
getSubElements в классе JMenuItem
Returns:
массив объектов MenuElement

getComponent

public Component getComponent()

Возвращает java.awt.Component используемое для рисования этого MenuElement. Возвращаемый компонент используется для преобразования событий и определения, находится ли событие внутри компонента меню.

Specified by:
getComponent в интерфейсе MenuElement
Overrides:
getComponent в классе JMenuItem
Returns:
Component рисующий этот элемент меню

applyComponentOrientation

public void applyComponentOrientation(ComponentOrientation o)

Устанавливает свойство ComponentOrientation этого меню и всех компонентов, содержащихся в нём. Это включает в себя все компоненты, возвращаемые getMenuComponents.

Overrides:
applyComponentOrientation в классе Container
Parameters:
o - новая ориентация компонента этого меню и содержащихся в нём компонентов.
Throws:
NullPointerException - если orientation равно null.
Since:
1.4
See Also:
Component.setComponentOrientation(java.awt.ComponentOrientation), Component.getComponentOrientation()

setAccelerator

public void setAccelerator(KeyStroke keyStroke)

setAccelerator не определено для JMenu. Используйте setMnemonic вместо этого.

Overrides:
setAccelerator в классе JMenuItem
Parameters:
keyStroke - сочетание клавиш, которое вызовет обработчики действий JMenuItem без навигации по иерархии меню
Throws:
Error - если вызвано -- этот метод не определён для JMenu. Используйте setMnemonic вместо этого

processKeyEvent

protected void processKeyEvent(KeyEvent evt)

Обрабатывает события нажатия клавиш, такие как мнемоники и акселераторы.

Overrides:
processKeyEvent в классе JComponent
Parameters:
evt - событие нажатия клавиши для обработки
See Also:
KeyEvent, KeyListener, KeyboardFocusManager, DefaultKeyboardFocusManager, Component.processEvent(java.awt.AWTEvent), Component.dispatchEvent(java.awt.AWTEvent), Component.addKeyListener(java.awt.event.KeyListener), Component.enableEvents(long), Component.isShowing()

doClick

public void doClick(int pressTime)

Программно выполняет "щелчок". Это переопределяет метод AbstractButton.doClick для того, чтобы меню всплывало.

Переопределяет:
doClick в классе AbstractButton
Параметры:
pressTime - указывает количество миллисекунд, в течение которого была нажата кнопка

paramString

protected String paramString()

Возвращает строковое представление этого JMenu. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться в разных реализациях. Возвращаемая строка может быть пустой, но не может быть null.

Переопределяет:
paramString в классе JMenuItem
Возвращает:
строковое представление этого JMenu.

getAccessibleContext

@BeanProperty(bound=false)
public AccessibleContext getAccessibleContext()

Получает AccessibleContext, связанный с этим JMenu. Для JMenu AccessibleContext имеет вид AccessibleJMenu. Новый экземпляр AccessibleJMenu создаётся при необходимости.

Определено в:
getAccessibleContext в интерфейсе Accessible
Переопределяет:
getAccessibleContext в классе JMenuItem
Возвращает:
AccessibleJMenu, который служит AccessibleContext этого JMenu

© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/JMenu.html

Spec-Zone .ru
спецификации, руководства, описания, API