Spec-Zone.ru › OpenJDK 21

Класс JMenu

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.AbstractButton
javax.swing.JMenuItem
javax.swing.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.

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

Modifier and Type Method Description
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 setComponentOrientation(ComponentOrientation o)
Устанавливает ориентацию для этого меню и его связанного всплывающего меню, определяемого аргументом ComponentOrientation.
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, hide, 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, 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, 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()
Возвращает имя класса темы оформления, отображающего этот компонент.
Переопределяет:
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.
Parameters:
b - элемент меню, для которого необходимо создать PropertyChangeListener
Returns:
PropertyChangeListener для b

addSeparator

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

insert

public void insert(String s, int pos)
Вставляет новый пункт меню с заданным текстом в указанную позицию.
Parameters:
s - текст для добавляемого пункта меню
pos - целое число, определяющее позицию вставки нового пункта меню
Throws:
IllegalArgumentException - если значение pos < 0

insert

public JMenuItem insert(JMenuItem mi, int pos)
Вставляет указанный JMenuitem в заданную позицию.
Parameters:
mi - добавляемый JMenuitem
pos - целое число, определяющее позицию вставки нового JMenuitem
Returns:
новый пункт меню
Throws:
IllegalArgumentException - если значение pos < 0

insert

public JMenuItem insert(Action a, int pos)
Вставляет новый пункт меню, привязанный к указанному объекту Action в заданную позицию.
Parameters:
a - объект Action для добавляемого пункта меню
pos - целое число, определяющее позицию вставки нового пункта меню
Returns:
новый пункт меню
Throws:
IllegalArgumentException - если значение pos < 0

insertSeparator

public void insertSeparator(int index)
Вставляет разделитель в указанную позицию.
Parameters:
index - целое число, определяющее позицию вставки разделителя меню
Throws:
IllegalArgumentException - если значение index < 0

getItem

public JMenuItem getItem(int pos)
Возвращает JMenuItem в указанной позиции. Если компонент в позиции pos не является пунктом меню, возвращается null. Этот метод включен для совместимости с AWT.
Parameters:
pos - целое число, определяющее позицию
Returns:
пункт меню в указанной позиции; или null если элемент в указанной позиции не является пунктом меню
Throws:
IllegalArgumentException - если значение pos < 0

getItemCount

@BeanProperty(bound=false) public int getItemCount()
Возвращает количество элементов в меню, включая разделители. Этот метод включён для совместимости с AWT.
Returns:
целое число, равное количеству элементов в меню
See Also:
  • getMenuComponentCount()

isTearOff

@BeanProperty(bound=false) public boolean isTearOff()
Возвращает true, если меню может быть отделено. Этот метод ещё не реализован.
Returns:
true, если меню может быть отделено, иначе false
Throws:
Error - если вызван -- этот метод ещё не реализован

remove

public void remove(JMenuItem item)
Удаляет указанный пункт меню из данного меню. Если нет всплывающего меню, этот метод не окажет никакого действия.
Parameters:
item - пункт меню, который необходимо удалить из меню

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 - всплывающее меню
Returns:
новый слушатель закрытия окна
See Also:
  • JMenu.WinListener

menuSelectionChanged

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, содержащий подменю для этого компонента меню. Если всплывающее меню null возвращает пустой массив. Этот метод необходим для соответствия интерфейсу 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()

setComponentOrientation

public void setComponentOrientation(ComponentOrientation o)
Устанавливает ориентацию для этого меню и его связанного всплывающего меню, определяемого аргументом ComponentOrientation.
Overrides:
setComponentOrientation в классе Component
Parameters:
o - новая ориентация для этого меню и его связанного всплывающего меню.
See Also:
  • ComponentOrientation
  • Component.invalidate()

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 для отображения всплывающего меню.
Overrides:
doClick в классе AbstractButton
Parameters:
pressTime - указывает количество миллисекунд, в течение которого нажата кнопка

paramString

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

getAccessibleContext

@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JMenu. Для JMenu AccessibleContext принимает вид AccessibleJMenu. Если необходимо, создаётся новый экземпляр AccessibleJMenu.
Specified by:
getAccessibleContext в интерфейсе Accessible
Overrides:
getAccessibleContext в классе JMenuItem
Returns:
AccessibleJMenu, который служит AccessibleContext этого JMenu

© 1993, 2023, 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/21/docs/api/java.desktop/javax/swing/JMenu.html

Spec-Zone.ru

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