Spec-Zone.ru › OpenJavaFX 8
javafx.scene.control

Класс Menu

java.lang.Object
  • javafx.scene.control.MenuItem
    • javafx.scene.control.Menu

Все реализованные интерфейсы:

Styleable, EventTarget



@DefaultProperty(value="items")
public class Menu
extends MenuItem

Появившееся меню с действиями, отображаемое пользователю только по запросу. Когда меню отображается, в большинстве случаев пользователь может выбрать один пункт меню, прежде чем меню вернется в скрытое состояние. Это означает, что меню — хорошее место для размещения важной функциональности, которая не обязательно должна быть постоянно видна пользователю.

Меню обычно размещаются в MenuBar или как подменю другого меню. Если целью является отображение контекстного меню при нажатии правой кнопкой мыши в определённой области пользовательского интерфейса, то данный элемент управления не подходит. Это происходит потому, что при добавлении Menu в сценуграфику, он будет иметь визуальное представление, что приведет к его отображению на экране. Вместо этого следует использовать ContextMenu в данной ситуации.

Создание меню и вставка его в строку меню проста, как показано ниже:

final Menu menu1 = new Menu("File");
 MenuBar menuBar = new MenuBar();
 menuBar.getMenus().add(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 со строкой пустым текстом для отображения.
    Menu(String text)
    Создает Menu и устанавливает текст для отображения заданным текстом.
    Menu(String text, Node graphic)
    Создает Menu и устанавливает текст для отображения заданным текстом и устанавливает графический элемент Node на заданный узел.
    Menu(String text, Node graphic, MenuItem... items)
    Создаёт Menu и задаёт отображаемый текст указанным текстом, графический элемент Node заданным узлом и вставляет заданные элементы в список items.
  • Краткое описание методов

    Все методыМетоды экземпляровКонкретные методы
    Модификатор и тип Метод и описание
    <E extends Event>
    void
    addEventHandler(EventType<E> eventType, EventHandler<E> eventHandler)
    Регистрирует обработчик событий в этом MenuItem.
    EventDispatchChain buildEventDispatchChain(EventDispatchChain tail)
    Строит цепочку обработки событий для этого целевого объекта.
    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 отображено.
    <E extends Event>
    void
    removeEventHandler(EventType<E> eventType, EventHandler<E> eventHandler)
    Отменяет регистрацию ранее зарегистрированного обработчика событий из этого MenuItem.
    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()
    Если Menu не отключен и контекстное меню ContextMenu ещё не отображается, то это вызовет отображение контекстного меню ContextMenu.
    ReadOnlyBooleanProperty showingProperty()
    Указывает, отображается ли в данный момент контекстное меню ContextMenu.
    • Методы, унаследованные от класса javafx.scene.control.MenuItem

      acceleratorProperty, disableProperty, fire, getAccelerator, getCssMetaData, getGraphic, getId, getOnAction, getOnMenuValidation, getParentMenu, getParentPopup, getProperties, getPseudoClassStates, getStyle, getStyleableParent, getStyleClass, getText, getTypeSelector, getUserData, graphicProperty, idProperty, isDisable, isMnemonicParsing, isVisible, mnemonicParsingProperty, onActionProperty, onMenuValidationProperty, parentMenuProperty, parentPopupProperty, setAccelerator, setDisable, setGraphic, setId, setMnemonicParsing, setOnAction, setOnMenuValidation, setParentMenu, setParentPopup, setStyle, setText, setUserData, setVisible, styleProperty, textProperty, toString, visibleProperty
    • Методы, унаследованные от класса java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Подробное описание свойства

    • 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()
      Создаёт меню с пустым текстом для отображения.

      С тех пор:

      JavaFX 2.2

    • Menu

      public Menu(String text)
      Создаёт меню и задаёт текст для отображения с указанным текстом.

      Параметры:

      text - текст, который будет отображаться на кнопке меню

    • Menu

      public Menu(String text,
                  Node graphic)
      Создаёт меню и задаёт текст для отображения с указанным текстом и устанавливает графический Node в указанный узел.

      Параметры:

      text - текст, который будет отображаться на кнопке меню

    • Menu

      public Menu(String text,
                  Node graphic,
                  MenuItem... items)
      Создаёт меню и задаёт текст для отображения с указанным текстом, графический Node в указанный узел и добавляет указанные элементы в список items.

      Параметры:

      text - текст, который будет отображаться на кнопке меню

      С тех пор:

      JavaFX 8u40

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

    • isShowing

      public final boolean isShowing()
      Возвращает значение свойства showing.

      Описание свойства:

      Указывает, отображается ли в данный момент контекстное меню 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)
      Устанавливает значение свойства onShowing.

      Описание свойства:

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

    • getOnShowing

      public final EventHandler<Event> getOnShowing()
      Возвращает значение свойства onShowing.

      Описание свойства:

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

    • onShownProperty

      public final ObjectProperty<EventHandler<Event>> onShownProperty()
      Вызывается сразу после отображения ContextMenu.

      См. также:

      getOnShown(), setOnShown(EventHandler)

    • setOnShown

      public final void setOnShown(EventHandler<Event> value)
      Устанавливает значение свойства onShown.

      Описание свойства:

      Вызывается сразу после отображения ContextMenu.

    • getOnShown

      public final EventHandler<Event> getOnShown()
      Возвращает значение свойства onShown.

      Описание свойства:

      Вызывается сразу после отображения ContextMenu.

    • onHidingProperty

      public final ObjectProperty<EventHandler<Event>> onHidingProperty()
      Вызывается непосредственно перед скрытием ContextMenu.

      См. также:

      getOnHiding(), setOnHiding(EventHandler)

    • setOnHiding

      public final void setOnHiding(EventHandler<Event> value)
      Устанавливает значение свойства onHiding.

      Описание свойства:

      Вызывается непосредственно перед скрытием ContextMenu.

    • getOnHiding

      public final EventHandler<Event> getOnHiding()
      Возвращает значение свойства onHiding.

      Описание свойства:

      Вызывается непосредственно перед скрытием ContextMenu.

    • onHiddenProperty

      public final ObjectProperty<EventHandler<Event>> onHiddenProperty()
      Вызывается сразу после скрытия ContextMenu.

      См. также:

      getOnHidden(), setOnHidden(EventHandler)

    • setOnHidden

      public final void setOnHidden(EventHandler<Event> value)
      Устанавливает значение свойства onHidden.

      Описание свойства:

      Вызывается сразу после скрытия ContextMenu.

    • getOnHidden

      public final EventHandler<Event> getOnHidden()
      Возвращает значение свойства onHidden.

      Описание свойства:

      Вызывается сразу после скрытия ContextMenu.

    • getItems

      public final ObservableList<MenuItem> getItems()
      Элементы, которые нужно отобразить в этом меню. Если этот список ObservableList изменяется во время выполнения, меню будет обновляться соответствующим образом.
    • show

      public void show()
      Если меню не отключено и ContextMenu ещё не отображается, это приведет к отображению ContextMenu.
    • hide

      public void hide()
      Скрывает ContextMenu, если оно было отображено ранее, а также любые дочерние меню. Если это меню не отображается, вызов этой функции не оказывает никакого влияния.
    • addEventHandler

      public <E extends Event> void addEventHandler(EventType<E> eventType,
                                                    EventHandler<E> eventHandler)
      Регистрирует обработчик событий для этого пункта меню. Обработчик вызывается, когда элемент меню получает событие указанного типа в фазе всплытия доставки событий.

      Переопределяет:

      addEventHandler в классе MenuItem

      Параметры типа:

      E — конкретный класс события для обработчика

      Параметры:

      eventType — тип событий, которые должен получать обработчик

    • removeEventHandler

      public <E extends Event> void removeEventHandler(EventType<E> eventType,
                                                       EventHandler<E> eventHandler)
      Отменяет регистрацию ранее зарегистрированного обработчика событий для этого пункта меню. Один обработчик может быть зарегистрирован для разных типов событий, поэтому вызывающий объект должен указать конкретный тип события, для отмены регистрации обработчика.

      Переопределяет:

      removeEventHandler в классе MenuItem

      Параметры типа:

      E — конкретный класс события для обработчика

      Параметры:

      eventType — тип события, для отмены регистрации

    • buildEventDispatchChain

      public EventDispatchChain buildEventDispatchChain(EventDispatchChain tail)
      Строит цепочку диспетчеризации событий для этого целевого объекта. Цепочка диспетчеризации событий содержит диспетчеры событий, которые могут быть заинтересованы в обработке событий, направленных на этот EventTarget. Этот целевой объект не добавляется в цепочку автоматически, поэтому, если он хочет обрабатывать события, ему необходимо добавить своего EventDispatcher в цепочку.

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

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

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

      Определено в:

      buildEventDispatchChain в интерфейсе EventTarget

      Переопределяет:

      buildEventDispatchChain в классе MenuItem

      Параметры:

      tail — начальная цепочка для построения

      Возвращает:

      результирующую цепочку диспетчеризации событий для этого целевого объекта

© 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.

Spec-Zone.ru

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