Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.controls
Пакет javafx.scene.control

Класс Menu

  • java.lang.Object
    • javafx.scene.control.MenuItem
      • javafx.scene.control.Menu
  • Все реализованные интерфейсы:
    Styleable, EventTarget
    @DefaultProperty("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 меню, создавая подменю:

    
     MenuItem menu12 = new MenuItem("Open");
     menu1.getItems().add(menu12);
     

    Список элементов позволяет вставлять любые типы 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)
    Создаёт меню и устанавливает текст отображения с указанным текстом, графическим Node заданному узлу и вставляет заданные элементы в список items.
  • Краткое описание методов

    Все методыМетоды экземпляраКонкретные методы
    Модификатор и тип Метод Описание
    <E extends Event>
    void
    addEventHandler​(EventType<E> eventType, EventHandler<E> eventHandler)
    Регистрирует обработчик событий для данного элемента меню.
    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)
    Отменяет ранее зарегистрированный обработчик событий из данного элемента меню.
    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, disableProperty, fire, getAccelerator, getCssMetaData, getGraphic, getId, getOnAction, getOnMenuValidation, getParentMenu, getParentPopup, getProperties, getPseudoClassStates, getStyle, getStyleableNode, 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()
      Создаёт меню с пустым строковым значением для текста отображения.
      Since:
      JavaFX 2.2
    • Menu

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

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

      public Menu​(String text,
                  Node graphic,
                  MenuItem... items)
      Создаёт меню и задаёт текст отображения указанным текстом, графическое Node на заданный узел и вставляет указанные элементы в список items.
      Параметры:
      text - текст для отображения на кнопке меню
      graphic - графическое изображение для отображения на кнопке меню
      items - Элементы для отображения в всплывающем меню.
      Since:
      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)
      Регистрирует обработчик событий для этого элемента меню. Обработчик вызывается, когда элемент меню получает Event указанного типа во время фазы распространения события.
      Переопределяет:
      addEventHandler в классе MenuItem
      Параметры типа:
      E - конкретный класс события обработчика
      Параметры:
      eventType - тип событий, которые должен получать обработчик
      eventHandler - регистрируемый обработчик
    • removeEventHandler

      public <E extends Event> void removeEventHandler​(EventType<E> eventType,
                                                       EventHandler<E> eventHandler)
      Отменяет регистрацию ранее зарегистрированного обработчика событий для этого элемента меню. Один обработчик может быть зарегистрирован для разных типов событий, поэтому вызывающий метод должен указать конкретный тип события, для которого необходимо отменить регистрацию обработчика.
      Переопределяет:
      removeEventHandler в классе MenuItem
      Параметры типа:
      E - конкретный класс события обработчика
      Параметры:
      eventType - тип события, для которого необходимо отменить регистрацию
      eventHandler - обработчик для отмены регистрации
    • 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