Справочник по ActionScript® 3.0 для платформы Adobe® Flash®
Домашняя страница  |  Скрыть список пакетов и классов |  Пакеты  |  Классы  |  Что нового  |  Указатель  |  Приложения  |  Почему по-английски?
Фильтры: Получение данных с сервера...
Получение данных с сервера...
flash.display 

NativeMenu  - AS3

Пакетflash.display
Классpublic class NativeMenu
НаследованиеNativeMenu Inheritance EventDispatcher Inheritance Object
Подклассы ContextMenu

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Класс NativeMenu содержит методы и свойства для определения собственных меню.

Поддержка в профилях AIR: эта функция поддерживается во всех компьютерных операционных системах, но не поддерживается на мобильных устройствах или на устройствах AIR for TV. Используйте свойство NativeMenu.isSupported, чтобы проверить наличие поддержки в среде выполнения. Дополнительные сведения о поддержке API-интерфейса в разных профилях см. в разделе «Поддержка в профилях AIR».

Собственное меню — это меню, которое управляется и отображается операционной системой, а не программой. AIR поддерживает следующие типы собственных меню:

  • Меню программы поддерживаются в ОС Mac OS X. Используйте свойство NativeApplication.supportsMenu, чтобы узнать, поддерживаются ли меню программы в операционной системе хоста. Меню программы отображается в строке меню вверху рабочего стола Mac. ОС Mac OS X меню по умолчанию для каждой программы, но многие из перечисленных в нем команд нефункциональны. Можно добавить прослушивателей событий для пунктов по умолчанию, заменить отдельные меню и пункты, а также полностью заменить меню по умолчанию. Для доступа к объекту меню программы служит свойство menu экземпляра NativeApplication.
  • Меню окон поддерживаются в ОС Windows и ОС Linux. Используйте свойство NativeWindow.supportsMenu, чтобы проверить, поддерживаются ли меню окна в операционной системе хоста. Меню окна отображается под строкой заголовка окна. Область, занимаемая меню, не входит в состав рабочей области окна. Программы не могут использовать эту область для рисования. Чтобы назначить окну меню, используйте свойство menu экземпляра NativeWindow.
  • Меню значков на панели Dock поддерживаются в ОС Mac OS X. Используйте свойство NativeApplication.supportsDockIcon, чтобы узнать, поддерживаются ли значки на панели Dock в операционной системе хоста. Пункты в меню значка на панели Dock отображаются над элементами по умолчанию, предусмотренными в операционной системе. Доступ к пунктам по умолчанию нельзя получить посредством кода программы. Задайте меню для свойства menu объекта DockIcon программы.
  • Меню значков на панели задач поддерживаются в ОС Windows и в большинстве версий ОС Linux. Используйте свойство NativeWindow.supportsSystemTrayIcon, чтобы проверить, поддерживаются ли значки на панели задач в операционной системе хоста. Меню значка на панели задач отображается в ответ на щелчок правой кнопкой мыши по значку, как и контекстное меню. Задайте меню для свойства menu объекта SystemTrayIcon программы.
  • Контекстные меню поддерживаются во всех операционных системах. Контекстные меню отображаются в ответ на событие пользовательского интерфейса, например на нажатие правой кнопки мыши или на нажатие кнопки мыши одновременно с клавишей Command над объектом InteractiveObject, отображаемым в программе. Механизм пользовательского интерфейса, используемый для отображения меню, может быть разным в зависимости от операционной системы и аппаратных средств компьютера. Задайте меню для свойства contextMenu объекта InteractiveObject. В AIR контекстное меню можно создать с помощью класса NativeMenu или ContextMenu. В Flash Player для этого можно использовать только класс ContextMenu. Объекты ContextMenu в AIR не имеют встроенных элементов; контекстное меню по умолчанию не отображается.
  • Раскрывающиеся меню поддерживаются во всех операционных системах. Раскрывающиеся меню выполняют те же функции, что и контекстные меню, но отображаются они с использованием метода display() объекта меню, а не в ответ на событие пользовательского ввода. Раскрывающееся меню не присоединяются к другим объектам. Просто необходимо создать собственное меню и вызвать метод display().

Объект меню содержит элементы меню. Элементом меню может быть команда, подменю или разделительная линия. Добавить элементы в меню можно с помощью метода addItem() или addItemAt(). Порядок отображения элементов меню соответствует порядку элементов в массиве items меню.

Чтобы создать подменю, добавьте элемент меню в родительский объект меню. Назначьте объект меню, представляющий подменю, свойству submenu соответствующего элемента родительского меню.

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

Меню отправляют события select, когда в меню или подменю выбирается элемент команды. (Подменю и разделители выбрать нельзя.) Свойство target объекта события ссылается на выбранный элемент.

Меню отправляют события preparing непосредственно перед отображением меню и при нажатии эквивалентной комбинации клавиш, назначенной для одного из элементов меню. Это событие можно использовать для обновления содержимого меню на основе текущего состояния приложения.

Примечание. Если используется ПО Flex Framework, рекомендуется использовать класс FlexNativeMenu. Обычно легче определить меню путем объявления в MXML, чем писать код ActionScript для создания каждого элемента структуры меню

Связанные элементы API



Общедоступные свойства
 СвойствоОпределено
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
      isSupported : Boolean
[статические] [только для чтения] Указывает, поддерживается ли в клиентской системе какая-либо форма собственного меню.
NativeMenu
      items : Array
Массив объектов NativeMenuItem в данном меню.
NativeMenu
      numItems : int
[только для чтения] Количество объектов NativeMenuItem в данном меню.
NativeMenu
      parent : NativeMenu
[только для чтения] Родительское меню.
NativeMenu
Общедоступные методы
 МетодОпределено
  
    NativeMenu()
Создает новый объект NativeMenu.
NativeMenu
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии.
EventDispatcher
  
Добавляет элемент в конец меню.
NativeMenu
  
Вставляет элемент меню в указанное положение.
NativeMenu
  
    addSubmenu(submenu:NativeMenu, label:String):NativeMenuItem
Добавляет подменю в меню путем вставки нового элемента меню.
NativeMenu
  
    addSubmenuAt(submenu:NativeMenu, index:int, label:String):NativeMenuItem
Добавляет подменю в меню, вставляя новый элемент меню в заданное положение.
NativeMenu
  
    clone():NativeMenu
Создает копию меню и всех элементов.
NativeMenu
  
Сообщает, содержит ли меню указанный элемент.
NativeMenu
 Inherited
Посылает событие в поток событий.
EventDispatcher
  
    display(stage:Stage, stageX:Number, stageY:Number):void
Добавляет раскрывающееся меню в заданном положении.
NativeMenu
  
Определяет элемент меню, расположенный по заданному индексу.
NativeMenu
  
Определяет элемент меню с заданным именем.
NativeMenu
  
Определяет положение заданного элемента.
NativeMenu
 Inherited
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события.
EventDispatcher
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
  
Удаляет все пункты меню.
NativeMenu
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Удаляет прослушиватель из объекта EventDispatcher.
EventDispatcher
  
Удаляет заданный элемент меню.
NativeMenu
  
Удаляет и возвращает элемент меню в заданный индекс.
NativeMenu
  
    setItemIndex(item:NativeMenuItem, index:int):void
Перемещает элемент меню в заданное положение.
NativeMenu
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
 Inherited
Возвращает строковое представление заданного объекта.
Object
 Inherited
Возвращает элементарное значение заданного объекта.
Object
 Inherited
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником.
EventDispatcher
События
 Событие Сводка Определено
 Inherited[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным.EventDispatcher
 Inherited[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR теряет фокус системы и становится неактивным.EventDispatcher
  
    displaying
Отправляется этим объектом NativeMenu непосредственно перед показом меню.NativeMenu
  
    preparing
Отправляется объектом NativeMenu при нажатии его эквивалентной комбинации клавиш и непосредственно перед отображением меню.NativeMenu
  
    select
Отправляется этим объектом NativeMenu при выборе одного из элементов меню или элемента одного из подменю.NativeMenu
Сведения о свойстве
    

isSupported

свойство
isSupported:Boolean  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 2.0

Указывает, поддерживается ли в клиентской системе какая-либо форма собственного меню.



Реализация
    public static function get isSupported():Boolean

Связанные элементы API

    

items

свойство 
items:Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Массив объектов NativeMenuItem в данном меню.

Массив сортируется в порядке отображения.

Примечание. Это свойство доступно только для чтения в AIR 1.0. Оно становится доступным для чтения или записи в AIR 1.1.



Реализация
    public function get items():Array
    public function set items(value:Array):void
    

numItems

свойство 
numItems:int  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Количество объектов NativeMenuItem в данном меню.



Реализация
    public function get numItems():int
    

parent

свойство 
parent:NativeMenu  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Родительское меню.

parent корневого объекта меню (верхнего уровня) является null.



Реализация
    public function get parent():NativeMenu
Сведения о конструкторе
    

NativeMenu

()Конструктор
public function NativeMenu()

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Создает новый объект NativeMenu.

Сведения о методе

    addItem

()метод
public function addItem(item:NativeMenuItem):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

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

При создании контекстного меню можно добавлять объекты NativeMenuItem или ContextMenuItem. Однако рекомендуется использовать только один тип объектов в контекстном меню, чтобы все элементы меню имели одинаковые свойства.

Примечание. Добавление элемента к меню может привести к зависанию приложения, если подменю элемента установлено на собственное меню (вызывает циклическую ссылку).

Параметры

item:NativeMenuItem — Объект NativeMenuItem для добавления в конец меню.

Возвращает
NativeMenuItem

Выдает
ArgumentError — Если item имеет значение null.
 
ArgumentError — Если item является составным элементом другого меню.

    addItemAt

()метод 
public function addItemAt(item:NativeMenuItem, index:int):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Вставляет элемент меню в указанное положение. Положение индексируется начиная сверху. Установите для параметра index значение «0», чтобы вставить элемент в начале меню. Индексация позиции всех типов меню (окно, приложение, значок в панели задач, значок в доке, контекстное и всплывающее меню) начинается сверху.

Параметры

item:NativeMenuItem — Вставляемый объект NativeMenuItem.
 
index:int — Положение в меню (от нуля), выбранное для вставки элемента меню.

Примечание. Добавление элемента к меню может привести к зависанию приложения, если подменю элемента установлено на собственное меню (вызывает циклическую ссылку).

Возвращает
NativeMenuItem

Выдает
ArgumentError — Если item имеет значение null.
 
ArgumentError — Если item является составным элементом другого меню.
 
RangeError — Если индекс находится за пределами массива items меню.

    addSubmenu

()метод 
public function addSubmenu(submenu:NativeMenu, label:String):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

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

Вызов метода addSubMenu() равносилен созданию нового элемента меню, его добавлению в меню и назначению объекта NativeMenu свойству submenu элемента.

Примечание. Добавление меню в качестве подменю для самого себя (по циклической ссылке) может привести к зависанию приложения.

Параметры

submenu:NativeMenu — Объект NativeMenu, определяющий добавляемое подменю.
 
label:String — Ярлык отображения для добавляемого элемента меню.

Возвращает
NativeMenuItem — Объект NativeMenuItem, созданный для подменю.

    addSubmenuAt

()метод 
public function addSubmenuAt(submenu:NativeMenu, index:int, label:String):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Добавляет подменю в меню, вставляя новый элемент меню в заданное положение.

Вызов метода addSubMenuAt() равносилен созданию нового элемента меню, вставке его в желаемое положение в меню и назначению объекта NativeMenu свойству submenu элемента.

Примечание. Добавление меню в качестве подменю для самого себя (по циклической ссылке) может привести к зависанию приложения.

Параметры

submenu:NativeMenu — Объект NativeMenu, определяющий добавляемое подменю.
 
index:int — Позиция массива items данного меню, в которую требуется вставить добавляемый элемент меню.
 
label:String — Ярлык отображения для добавляемого элемента меню.

Возвращает
NativeMenuItem — Объект NativeMenuItem, созданный для подменю.

    clone

()метод 
public function clone():NativeMenu

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Создает копию меню и всех элементов.

Возвращает
NativeMenu

    containsItem

()метод 
public function containsItem(item:NativeMenuItem):Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Сообщает, содержит ли меню указанный элемент.

Параметры

item:NativeMenuItem — Объект NativeMenuItem, который требуется найти.

Возвращает
Booleantrue, если item есть в этом меню.

    display

()метод 
public function display(stage:Stage, stageX:Number, stageY:Number):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

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

Параметры

stage:Stage — Объект Stage, на котором будет отображаться данное меню.
 
stageX:Number — Число пикселей по горизонтали относительно начала рабочей области, на котором будет отображаться данное меню.
 
stageY:Number — Число пикселей по вертикали относительно начала рабочей области, на котором будет отображаться данное меню.

    getItemAt

()метод 
public function getItemAt(index:int):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Определяет элемент меню, расположенный по заданному индексу.

Параметры

index:int — Положение (от нуля) возвращаемого элемента.

Возвращает
NativeMenuItem — Объект NativeMenuItem, расположенный в заданном положении в меню.

Выдает
RangeError — Если index находится за пределами массива items меню.

    getItemByName

()метод 
public function getItemByName(name:String):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Определяет элемент меню с заданным именем.

Примечание. Свойство name элементов меню не назначается по умолчанию.

Параметры

name:String — Искомая строка.

Возвращает
NativeMenuItem — Объект NativeMenuItem с заданным именем или значение null, если такого элемента в меню не существует.

    getItemIndex

()метод 
public function getItemIndex(item:NativeMenuItem):int

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Определяет положение заданного элемента.

Параметры

item:NativeMenuItem — Объект NativeMenuItem, который требуется найти.

Возвращает
int — Положение (от нуля) указанного элемента в данном меню или -1, если элемент отсутствует в меню.

    removeAllItems

()метод 
public function removeAllItems():void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Удаляет все пункты меню.

    removeItem

()метод 
public function removeItem(item:NativeMenuItem):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Удаляет заданный элемент меню.

Параметры

item:NativeMenuItem — Объект NativeMenuItem для удаления из данного меню.

Возвращает
NativeMenuItem

Выдает
RangeError — Если item нет в этом меню.

    removeItemAt

()метод 
public function removeItemAt(index:int):NativeMenuItem

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Удаляет и возвращает элемент меню в заданный индекс.

Параметры

index:int — Положение (от нуля) удаляемого элемента.

Возвращает
NativeMenuItem — Удаленный объект NativeMenuItem.

Выдает
RangeError — Если index находится за пределами массива items этого меню.

    setItemIndex

()метод 
public function setItemIndex(item:NativeMenuItem, index:int):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Перемещает элемент меню в заданное положение. Если элемент еще не находится в меню, вызов этого метода добавляет элемент к меню.

Параметры

item:NativeMenuItem — Перемещаемый объект NativeMenuItem.
 
index:int — Положение (от нуля) в меню, в которое нужно переместить item.


Выдает
RangeError — Если index находится за пределами массива items меню.
Сведения о событии
    

displaying

Событие
Тип объекта события: flash.events.Event
свойство Event.type = flash.events.Event.DISPLAYING

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Отправляется этим объектом NativeMenu непосредственно перед показом меню.

Прослушивайте это событие для обновления меню перед показом. Событие displaying также отправляется элементами меню.

Событие preparing предшествует событию displaying и предоставляет дополнительную функциональность. Прослушивайте только одно из событий: preparing или displaying.

Примечание. До версии AIR 2.6 для Mac OS X меню и элементы меню отправляли событие displaying, когда пользователь нажимал эквивалентную комбинацию клавиш. (Это событие не отправлялось при нажатии эквивалентной комбинации клавиш в других операционных системах.) Начиная с версии AIR 2.6 события displaying больше не отправляются, когда пользователь нажимает эквивалентную комбинацию клавиш. Вместо этого следует использовать событие preparing.

Константа Event.DISPLAYING определяет значение свойства type объекта события displaying.

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

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
targetОбъект, который сейчас будет отображаться.
    

preparing

Событие  
Тип объекта события: flash.events.Event
свойство Event.type = flash.events.Event.PREPARING

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 2.6

Отправляется объектом NativeMenu при нажатии его эквивалентной комбинации клавиш и непосредственно перед отображением меню.

Прослушивайте это событие, чтобы обновить перед его отображением или когда пользователь нажимает его эквивалентную комбинацию клавиш. Событие preparing отправляется прежде, чем будет завершена оценка эквивалентной комбинации клавиш. Можно включить, отключить или удалить элементы из меню с помощью обработчика события preparing, и эти изменения вступят в силу при нажатии эквивалентной комбинации клавиш. Например, при удалении или отключении элемента меню, для которого назначена нажатая комбинация клавиш, последовательность событий отменяется, и событие select не отправляется. Событие preparing также отправляется элементами меню.

Событие preparing предшествует событию displaying и предоставляет дополнительную функциональность. Прослушивайте только одно из событий: preparing или displaying.

Константа Event.PREPARING определяет значение свойства type объекта события preparing.

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

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse
currentTargetОбъект, отправивший это событие.
targetОбъект, отправивший это событие.
    

select

Событие  
Тип объекта события: flash.events.Event
свойство Event.type = flash.events.Event.SELECT

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0

Отправляется этим объектом NativeMenu при выборе одного из элементов меню или элемента одного из подменю.

Событие select переходит по восходящей цепочке из данного элемента в содержащее его меню и дальше вверх к корневому объекту меню. Свойство target объекта событий ссылается на выбранный объект NativeMenuItem. Свойство currentTarget ссылается на данный объект NativeMenu.

Константа Event.SELECT определяет значение свойства type объекта события select.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
targetОбъект, в котором выделен элемент.




[ X ]Почему по-английски?
Содержимое Справочника ActionScript 3.0 отображается на английском языке

Не все части Справочника ActionScript 3.0 переводятся на все языки. Если какой-то текстовый элемент не переведен, он отображается на английском языке. Например, компонент ga.controls.HelpBox не переведен ни на один из языков. Это значит, что в русской версии справки компонент ga.controls.HelpBox будет отображаться на английском языке.