Класс Меню
- Все реализованные интерфейсы:
-
Styleable,EventTarget
@DefaultProperty("items")
public class Menu
extends MenuItem Появившееся меню, состоящее из пунктов, которые пользователь может выбрать по запросу. Когда меню отображается, в большинстве случаев пользователь может выбрать один пункт меню, прежде чем меню вернётся в скрытое состояние. Это означает, что меню — хорошее место для размещения важной функциональности, которая не обязательно должна быть постоянно видна пользователю.
Меню обычно размещаются в MenuBar или как подменю другого меню. Если целью является предоставление контекстного меню при щелчке правой кнопкой мыши в определённой области пользовательского интерфейса, то данный элемент управления использовать не следует. Это связано с тем, что когда Menu добавляется в сцену, он имеет визуальное представление, которое приведет к его отображению на экране. Вместо этого, в этом случае следует использовать ContextMenu.
Создание меню и его вставка в строку меню проста, как показано ниже:
Menu menu1 = new Menu("File");
MenuBar menuBar = new MenuBar(menu1); Меню — это подкласс MenuItem, что означает, что его можно вставить в список items ObservableList, что приведет к созданию подменю:
MenuItem menu12 = new MenuItem("Open");
menu1.getItems().add(menu12); Список элементов ObservableList позволяет вставлять любой тип MenuItem, включая его подклассы Menu, MenuItem, RadioMenuItem, CheckMenuItem, CustomMenuItem и SeparatorMenuItem. Для вставки произвольного Node в меню можно использовать CustomMenuItem. Исключением из этого общего правила является то, что SeparatorMenuItem можно использовать для вставки разделителя.
- С:
- JavaFX 2.0
- См. также:
-
MenuBar,MenuItem
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
ObjectProperty<EventHandler<Event>> | onHidden | Вызывается сразу после того, как ContextMenu было скрыто. |
ObjectProperty<EventHandler<Event>> | onHiding | Вызывается непосредственно перед скрытием ContextMenu. |
ObjectProperty<EventHandler<Event>> | onShowing | Вызывается непосредственно перед отображением ContextMenu, даже если в меню нет элементов для отображения. |
ObjectProperty<EventHandler<Event>> | onShown | Вызывается сразу после отображения ContextMenu. |
ReadOnlyBooleanProperty | showing | Указывает, отображается ли в данный момент ContextMenu. |
Свойства, объявленные в классе javafx.scene.control.MenuItem
accelerator, disable, graphic, id, mnemonicParsing, onAction, onMenuValidation, parentMenu, parentPopup, style, text, visible
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static EventType<Event> | ON_HIDDEN | Вызывается при скрытии контекстного меню для данного меню. |
static EventType<Event> | ON_HIDING | Вызывается, когда контекстное меню для данного меню будет скрыто. |
static EventType<Event> | ON_SHOWING | Вызывается, когда контекстное меню для данного меню будет отображено. |
static EventType<Event> | ON_SHOWN | Вызывается при отображении контекстного меню для данного меню. |
Поля, объявленные в классе javafx.scene.control.MenuItem
MENU_VALIDATION_EVENT
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Menu() | Создаёт меню со строкой пустой строки в качестве текста отображения. |
Menu(String text) | Создаёт меню и задаёт текст отображения указанным текстом. |
Menu(String text,
Node graphic) | Создаёт меню и задаёт текст отображения указанным текстом и задаёт графическое Node заданному узлу. |
Menu(String text,
Node graphic,
MenuItem... items) |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
ObservableList<MenuItem> | getItems() | Элементы, которые нужно отобразить в этом меню. |
EventHandler<Event> | getOnHidden() | Получает значение свойства onHidden. |
EventHandler<Event> | getOnHiding() | Получает значение свойства onHiding. |
EventHandler<Event> | getOnShowing() | Получает значение свойства onShowing. |
EventHandler<Event> | getOnShown() | Получает значение свойства onShown. |
void | hide() | Скрывает ContextMenu, если он был ранее отображён, и все отображённые подменю. |
boolean | isShowing() | Получает значение свойства showing. |
ObjectProperty<EventHandler<Event>> | onHiddenProperty() | Вызывается сразу после того, как ContextMenu был скрыт. |
ObjectProperty<EventHandler<Event>> | onHidingProperty() | Вызывается непосредственно перед скрытием ContextMenu. |
ObjectProperty<EventHandler<Event>> | onShowingProperty() | Вызывается непосредственно перед отображением ContextMenu, даже если в меню нет элементов для отображения. |
ObjectProperty<EventHandler<Event>> | onShownProperty() | Вызывается сразу после отображения ContextMenu. |
void | setOnHidden(EventHandler<Event> value) | Устанавливает значение свойства onHidden. |
void | setOnHiding(EventHandler<Event> value) | Устанавливает значение свойства onHiding. |
void | setOnShowing(EventHandler<Event> value) | Устанавливает значение свойства onShowing. |
void | setOnShown(EventHandler<Event> value) | Устанавливает значение свойства onShown. |
void | show() | Если меню не отключено и ContextMenu ещё не отображается, это приведет к отображению ContextMenu. |
ReadOnlyBooleanProperty | showingProperty() | Указывает, отображается ли в данный момент ContextMenu. |
Методы, объявленные в классе javafx.scene.control.MenuItem
acceleratorProperty, addEventHandler, disableProperty, fire, getAccelerator, getGraphic, getOnAction, getOnMenuValidation, getParentMenu, getParentPopup, getProperties, getPseudoClassStates, getStyleableParent, getText, getTypeSelector, getUserData, graphicProperty, idProperty, isDisable, isMnemonicParsing, isVisible, mnemonicParsingProperty, onActionProperty, onMenuValidationProperty, parentMenuProperty, parentPopupProperty, removeEventHandler, setAccelerator, setDisable, setGraphic, setId, setMnemonicParsing, setOnAction, setOnMenuValidation, setParentMenu, setParentPopup, setStyle, setText, setUserData, setVisible, styleProperty, textProperty, visibleProperty
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javafx.event.EventTarget
buildEventDispatchChain
Методы, объявленные в интерфейсе javafx.css.Styleable
getCssMetaData, getId, getStyle, getStyleableNode, getStyleClass
Подробности свойства
showing
public final ReadOnlyBooleanProperty showingProperty
ContextMenu.- Значение по умолчанию:
- false
- См. также:
isShowing()
onShowing
public final ObjectProperty<EventHandler<Event>> onShowingProperty
ContextMenu, даже если в меню нет элементов для отображения. Обратите внимание, что это не будет вызвано, если у меню нет действительного узла якоря.- См. также:
-
getOnShowing(),setOnShowing(EventHandler)
onShown
public final ObjectProperty<EventHandler<Event>> onShownProperty
ContextMenu.- См. также:
-
getOnShown(),setOnShown(EventHandler)
onHiding
public final ObjectProperty<EventHandler<Event>> onHidingProperty
ContextMenu.- См. также:
-
getOnHiding(),setOnHiding(EventHandler)
onHidden
public final ObjectProperty<EventHandler<Event>> onHiddenProperty
ContextMenu было скрыто.- См. также:
-
getOnHidden(),setOnHidden(EventHandler)
Подробности полей
ON_SHOWING
public static final EventType<Event> ON_SHOWING
Вызывается при отображении контекстного меню для этого меню. Однако, если контекстное меню пустое, то это не будет вызвано.
ON_SHOWN
public static final EventType<Event> ON_SHOWN
Вызывается при отображении контекстного меню для этого меню. Однако, если контекстное меню пустое, то это не будет вызвано.
ON_HIDING
public static final EventType<Event> ON_HIDING
Вызывается при скрытии контекстного меню для этого меню. Однако, если контекстное меню пустое, то это не будет вызвано.
ON_HIDDEN
public static final EventType<Event> ON_HIDDEN
Вызывается при скрытии контекстного меню для этого меню. Однако, если контекстное меню пустое, то это не будет вызвано.
Подробности конструкторов
Menu
public Menu()
- Since:
- JavaFX 2.2
Menu
public Menu(String text)
- Parameters:
-
text- текст для отображения на кнопке меню
Menu
public Menu(String text, Node graphic)
Node заданному узлу.- Parameters:
-
text- текст для отображения на кнопке меню -
graphic- графику для отображения на кнопке меню
Menu
public Menu(String text, Node graphic, MenuItem... items)
Node заданному узлу и вставляет заданные элементы в список items.- Parameters:
-
text- текст для отображения на кнопке меню -
graphic- графику для отображения на кнопке меню -
items- Элементы для отображения в всплывающем меню. - Since:
- JavaFX 8u40
Подробности методов
isShowing
public final boolean isShowing()
- Описание свойства:
- Указывает, отображается ли в данный момент
ContextMenu. - Значение по умолчанию:
- false
showingProperty
public final ReadOnlyBooleanProperty showingProperty()
ContextMenu.- Значение по умолчанию:
- false
- См. также:
isShowing()
onShowingProperty
public final ObjectProperty<EventHandler<Event>> onShowingProperty()
ContextMenu, даже если в меню нет элементов для отображения. Обратите внимание, что это не будет вызвано, если у меню нет действительного узла якоря.- См. также:
-
getOnShowing(),setOnShowing(EventHandler)
setOnShowing
public final void setOnShowing(EventHandler<Event> value)
- Описание свойства:
- Вызывается непосредственно перед отображением
ContextMenu, даже если в меню нет элементов для отображения. Обратите внимание, что это не будет вызвано, если у меню нет действительного узла якоря.
getOnShowing
public final EventHandler<Event> getOnShowing()
- Описание свойства:
- Вызывается непосредственно перед отображением
ContextMenu, даже если в меню нет элементов для отображения. Обратите внимание, что это не будет вызвано, если у меню нет действительного узла якоря.
onShownProperty
public final ObjectProperty<EventHandler<Event>> onShownProperty()
ContextMenu.- См. также:
-
getOnShown(),setOnShown(EventHandler)
setOnShown
public final void setOnShown(EventHandler<Event> value)
- Описание свойства:
- Вызывается непосредственно после отображения
ContextMenu.
getOnShown
public final EventHandler<Event> getOnShown()
- Описание свойства:
- Вызывается непосредственно после отображения
ContextMenu.
onHidingProperty
public final ObjectProperty<EventHandler<Event>> onHidingProperty()
ContextMenu.- См. также:
-
getOnHiding(),setOnHiding(EventHandler)
setOnHiding
public final void setOnHiding(EventHandler<Event> value)
- Описание свойства:
- Вызывается непосредственно перед скрытием
ContextMenu.
getOnHiding
public final EventHandler<Event> getOnHiding()
- Описание свойства:
- Вызывается непосредственно перед скрытием
ContextMenu.
onHiddenProperty
public final ObjectProperty<EventHandler<Event>> onHiddenProperty()
ContextMenu было скрыто.- См. также:
-
getOnHidden(),setOnHidden(EventHandler)
setOnHidden
public final void setOnHidden(EventHandler<Event> value)
- Описание свойства:
- Вызывается непосредственно после того, как
ContextMenuбыло скрыто.
getOnHidden
public final EventHandler<Event> getOnHidden()
- Описание свойства:
- Вызывается непосредственно после того, как
ContextMenuбыло скрыто.
getItems
public final ObservableList<MenuItem> getItems()
- Возвращает:
- список элементов
отображение
public void show()
ContextMenu ещё не отображается, то это вызовет отображение ContextMenu.скрыть
public void hide()
ContextMenu, если оно было ранее отображено, и любые отображаемые подменю. Если это меню не отображается, вызов этой функции не оказывает никакого эффекта.
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.