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

ContextMenuItem  - AS3

Пакетflash.ui
Классpublic final class ContextMenuItem
НаследованиеContextMenuItem Inheritance NativeMenuItem Inheritance EventDispatcher Inheritance Object

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

Класс ContextMenuItem представляет пункт контекстного меню. Каждый объект ContextMenuItem имеет подпись (текст), который отображается в контекстом меню. Для добавления нового элемента в контекстное меню его необходимо добавить в массив customItems объекта ContextMenu.

С помощью свойств класса ContextMenuItem можно включать или выключать определенные элементы меню, а также делать их видимыми или невидимыми.

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

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

Ограничения

  • В контекстное меню можно добавить не более 15 пользовательских элементов.
  • Каждая подпись должна содержать хотя бы один видимый символ.
  • Управляющие символы, символы новой строки и другие символы пробела игнорируются.
  • Длина подписи не должна превышать 100 символов.
  • Подписи, идентичные встроенным элементам меню или другим пользовательским элементам, игнорируются независимо от того, отображается совпадающий с ним элемент или нет. Подписи меню сравниваются с встроенными или существующими пользовательскими подписями без учета регистра, пунктуации и пробелов.
  • Следующие подписи не разрешены, но для пользовательской подписи эти слова можно использовать в сочетании с другими (например, "Paste" (Вставить) — запрещено, а "Paste tastes great" (Пастила очень вкусная) — разрешено):
     Save
     Zoom In
     Zoom Out
     100%
     Show All
     Quality
     Play
     Loop
     Rewind
     Forward
     Back
     Movie not loaded
     About
     Print
     Show Redraw Regions
     Debugger
     Undo
     Cut
     Copy
     Paste
     Delete
     Select All
     Open
     Open in new window
     Copy link
     
  • Ни одно из следующих слов не может использоваться в пользовательских подписях ни отдельно, ни в сочетании с другими словами:
     Adobe
     Macromedia
     Flash Player
     Settings
     

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

Посмотреть примеры

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



Общедоступные свойства
 СвойствоОпределено
  caption : String
Задает подпись (текст) элемента меню, отображаемую в контекстном меню.
ContextMenuItem
 Inherited    checked : Boolean
Управляет отображением флажка для данного элемента меню.
NativeMenuItem
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
 Inherited    data : Object
Объект произвольных данных, связанный с данным элементом меню.
NativeMenuItem
 Inherited    enabled : Boolean
Управляет включением данного элемента меню.
NativeMenuItem
 Inherited    isSeparator : Boolean
[только для чтения] Сообщает, является ли данный элемент разделительной линией меню.
NativeMenuItem
 Inherited    keyEquivalent : String
Эквивалентная комбинация клавиш для данного элемента меню.
NativeMenuItem
 Inherited    keyEquivalentModifiers : Array
Массив кодов клавиш для модификаторов эквивалентной комбинации клавиш.
NativeMenuItem
 Inherited    label : String
Строка отображения данного элемента меню.
NativeMenuItem
 Inherited    menu : NativeMenu
[только для чтения] Меню, содержащее данный элемент.
NativeMenuItem
 Inherited    mnemonicIndex : int
Положение мнемонического символа в ярлыке элемента меню.
NativeMenuItem
 Inherited    name : String
Имя данного элемента меню.
NativeMenuItem
  separatorBefore : Boolean
Показывает, должен ли отображаться разделитель над заданным элементом меню.
ContextMenuItem
 Inherited    submenu : NativeMenu
Подменю, связанное с данным элементом меню.
NativeMenuItem
  visible : Boolean
Показывает, виден ли заданный элемент меню при отображении контекстного меню проигрывателя Flash Player.
ContextMenuItem
Общедоступные методы
 МетодОпределено
  
ContextMenuItem(caption:String, separatorBefore:Boolean = false, enabled:Boolean = true, visible:Boolean = true)
Создает новый объект ContextMenuItem, который можно добавить в массив ContextMenu.customItems.
ContextMenuItem
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии.
EventDispatcher
  
[переопределить] Создает копию объекта NativeMenuItem.
ContextMenuItem
 Inherited
Посылает событие в поток событий.
EventDispatcher
 Inherited
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события.
EventDispatcher
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Удаляет прослушиватель из объекта EventDispatcher.
EventDispatcher
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
  
[статические]
ContextMenuItem
  
[статические]
ContextMenuItem
  
[статические]
ContextMenuItem
  
[статические]
ContextMenuItem
  
[статические]
ContextMenuItem
  
[статические]
ContextMenuItem
  
[статические]
ContextMenuItem
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
 Inherited
    toString():String
[переопределить] Возвращает строку, содержащую все свойства объекта NativeMenuItem.
NativeMenuItem
 Inherited
Возвращает элементарное значение заданного объекта.
Object
 Inherited
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником.
EventDispatcher
События
 Событие Сводка Определено
 Inherited[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным.EventDispatcher
 Inherited[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR теряет фокус системы и становится неактивным.EventDispatcher
 Inherited
    displaying
Передается этим объектом NativeMenuItem непосредственно перед показом меню, содержащего элемент.NativeMenuItem
  Отправляется, когда пользователь выбирает элемент из контекстного меню.ContextMenuItem
 Inherited
    preparing
Отправляется этим объектом NativeMenuItem при нажатии его эквивалентной комбинации клавиш и непосредственно перед отображением содержащего его меню.NativeMenuItem
 Inherited
    select
Передается каждый раз, когда пользователь выбирает элемент меню.NativeMenuItem
Сведения о свойстве

caption

свойство
caption:String

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

Задает подпись (текст) элемента меню, отображаемую в контекстном меню. Ограничения значений caption см. в описании класса ContextMenuItem.



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

separatorBefore

свойство 
separatorBefore:Boolean

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

Показывает, должен ли отображаться разделитель над заданным элементом меню.

Примечание. Между пользовательскими и встроенными элементами меню всегда отображается разделительная полоса.

Значением по умолчанию является false.



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

visible

свойство 
visible:Boolean

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

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

Значением по умолчанию является true.



Реализация
    public function get visible():Boolean
    public function set visible(value:Boolean):void
Сведения о конструкторе

ContextMenuItem

()Конструктор
public function ContextMenuItem(caption:String, separatorBefore:Boolean = false, enabled:Boolean = true, visible:Boolean = true)

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

Создает новый объект ContextMenuItem, который можно добавить в массив ContextMenu.customItems.

Параметры
caption:String — Задает текст, связанный с элементом меню. Ограничения значений caption см. в описании класса ContextMenuItem.
 
separatorBefore:Boolean (default = false) — Указывает, появляется ли разделитель над элементом контекстного меню. Значение по умолчанию false.
 
enabled:Boolean (default = true) — Указывает, включен или выключен элемент контекстного меню. Значение по умолчанию — true (включен). Этот параметр является необязательным.
 
visible:Boolean (default = true) — Указывает, является элемент меню видимым или невидимым. Значение по умолчанию — true (видимый).
Сведения о методе

clone

()метод
override public function clone():NativeMenuItem

Создает копию объекта NativeMenuItem.

Возвращает
NativeMenuItem

systemClearMenuItem

()метод 
public static function systemClearMenuItem():ContextMenuItem

Возвращает
ContextMenuItem

systemCopyLinkMenuItem

()метод 
public static function systemCopyLinkMenuItem():ContextMenuItem

Возвращает
ContextMenuItem

systemCopyMenuItem

()метод 
public static function systemCopyMenuItem():ContextMenuItem

Возвращает
ContextMenuItem

systemCutMenuItem

()метод 
public static function systemCutMenuItem():ContextMenuItem

Возвращает
ContextMenuItem

systemOpenLinkMenuItem

()метод 
public static function systemOpenLinkMenuItem():ContextMenuItem

Возвращает
ContextMenuItem

systemPasteMenuItem

()метод 
public static function systemPasteMenuItem():ContextMenuItem

Возвращает
ContextMenuItem

systemSelectAllMenuItem

()метод 
public static function systemSelectAllMenuItem():ContextMenuItem

Возвращает
ContextMenuItem
Сведения о событии

menuItemSelect

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

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

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

Определяет значение свойства type объекта события menuItemSelect.

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

СвойствоЗначение
bubblesfalse
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
contextMenuOwnerОбъект списка отображения, к которому присоединено меню.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
mouseTargetОбъект списка отображения, который пользователь щелкает правой кнопкой мыши для отображения контекстного меню.
targetВыбранный объект ContextMenuItem. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент.
ContextMenuItemExample.as

В следующем примере класс ContextMenuBuiltInItemsExample используется для удаления из рабочей области элементов контекстного меню по умолчанию и добавления нового элемента меню. Это можно сделать, выполнив следующие действия:
  1. Объявляется свойство myContextMenu, а затем назначается объекту ContextMenu.
  2. Вызывается метод removeDefaultItems(), который удаляет все встроенные элементы контекстного меню, кроме «Печать».
  3. Вызывается метод addCustomMenuItems(), который помещает элемент меню Hello World «Здравствуй мир!» в массив customItems с помощью метода push() объекта Array.
  4. Элемент контекстного меню Hello World добавляется в список элементов контекстного меню рабочей области.
  5. В рабочую область добавляется объект TextField с текстом Right Click Here (Щелкни здесь правой кнопкой).
package {
    import flash.ui.ContextMenu;
    import flash.ui.ContextMenuItem;
    import flash.ui.ContextMenuBuiltInItems;
    import flash.display.Sprite;
    import flash.text.TextField;

    public class ContextMenuItemExample extends Sprite {
        private var myContextMenu:ContextMenu;

        public function ContextMenuItemExample() {
            myContextMenu = new ContextMenu();
            removeDefaultItems();
            addCustomMenuItems();
            this.contextMenu = myContextMenu;
            addChild(createLabel());
        }

        private function removeDefaultItems():void {
            myContextMenu.hideBuiltInItems();

            var defaultItems:ContextMenuBuiltInItems = myContextMenu.builtInItems;
            defaultItems.print = true;
        }

        private function addCustomMenuItems():void {
            var item:ContextMenuItem = new ContextMenuItem("Hello World");
            myContextMenu.customItems.push(item);
        }
        
        private function createLabel():TextField {
            var txtField:TextField = new TextField();
            txtField.text = "Right Click Here";
            return txtField;
        }
    }
}




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

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