Package | mx.controls |
Class | public class FlexNativeMenu |
Inheritance | FlexNativeMenu ![]() ![]() |
Implements | ILayoutManagerClient, IFlexContextMenu, IAutomationObject |
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | AIR 1.1 |
Like other Flex menu components, to define the structure of a menu represented by a
FlexNativeMenu component, you create a data provider such as an XML hierarchy or an array
of objects containing data to be used to define the menu. Several properties can be set to
define how the data provider data is interpreted, such as the labelField
property
to specify the data field that is used for the menu item label, the keyEquivalentField
property to specify the field that defines a keyboard equivalent shortcut for the menu item,
and the mnemonicIndexField
property to specify the field that defines the index
position of the character in the label that is used as the menu item's mnemonic.
The data provider for FlexNativeMenu items can specify several attributes that determine how the item is displayed and behaves, as the following XML data provider shows:
<mx:XML format="e4x" id="myMenuData"> <root> <menuitem label="MenuItem A"> <menuitem label="SubMenuItem A-1" enabled="False"/> <menuitem label="SubMenuItem A-2"/> </menuitem> <menuitem label="MenuItem B" type="check" toggled="true"/> <menuitem label="MenuItem C" type="check" toggled="false"/> <menuitem type="separator"/> <menuitem label="MenuItem D"> <menuitem label="SubMenuItem D-1"/> <menuitem label="SubMenuItem D-2"/> <menuitem label="SubMenuItem D-3"/> </menuitem> </root> </mx:XML>
The following table lists the attributes you can specify, their data types, their purposes, and how the data provider must represent them if the menu uses the DefaultDataDescriptor class to parse the data provider:
Attribute | Type | Description |
---|---|---|
altKey
| Boolean | Specifies whether the Alt key is required as part of the key equivalent for the item. |
cmdKey
| Boolean |
Note: this attribute is deprecated as of Flex 3.2. Use
commandKey instead. Specifies whether the Command key is required as part
of the key equivalent for the item. |
commandKey
| Boolean | Specifies whether the Command key is required as part of the key equivalent for the item. |
controlKey
| Boolean | Specifies whether the Control key is required as part of the key equivalent for the item. |
ctrlKey
| Boolean |
Note: this attribute is deprecated as of Flex 3.2. Use
controlKey instead. Specifies whether the Control key is required as part
of the key equivalent for the item. |
enabled
| Boolean | Specifies whether the user can select the menu item (true ),
or not (false ). If not specified, Flex treats the item as if
the value were true .
If you use the default data descriptor, data providers must use an enabled
XML attribute or object field to specify this characteristic. |
keyEquivalent
| String | Specifies a keyboard character which, when pressed, triggers an event as though
the menu item was selected. The menu's keyEquivalentField or
keyEquivalentFunction property determines the name of the field
in the data that specifies the key equivalent, or a function for determining
the key equivalents. (If the data provider is in E4X XML format, you must specify
one of these properties to assign a key equivalent.) |
label
| String | Specifies the text that appears in the control. This item is used for all
menu item types except separator .
The menu's labelField or labelFunction property
determines the name of the field in the data that specifies the label,
or a function for determining the labels. (If the data provider is in E4X XML format,
you must specify one of these properties to display a label.)
If the data provider is an Array of Strings, Flex uses the String value as the label. |
mnemonicIndex
| Integer | Specifies the index position of the character in the label that is used as the
mnemonic for the menu item. The menu's mnemonicIndexField or
mnemonicIndexFunction property determines the name of the field
in the data that specifies the mnemonic index, or a function for determining
mnemonic index. (If the data provider is in E4X XML format, you must specify
one of these properties to specify a mnemonic index in the data.) Alternatively,
you can indicate that a character in the label is the menu item's mnemonic by
including an underscore immediately to the left of that character. |
shiftKey
| Boolean | Specifies whether the Shift key is required as part of the key equivalent for the item. |
toggled
| Boolean | Specifies whether a check item is selected.
If not specified, Flex treats the item as if the value were false
and the item is not selected.
If you use the default data descriptor, data providers must use a toggled
XML attribute or object field to specify this characteristic. |
type
| String | Specifies the type of menu item. Meaningful values are separator and
check . Flex treats all other values,
or nodes with no type entry, as normal menu entries.
If you use the default data descriptor, data providers must use a type
XML attribute or object field to specify this characteristic. |
To create a window menu, set the FlexNativeMenu as the menu
property of the
Window or WindowedApplication instance on which the menu should appear. To create an application
menu, assign the FlexNativeMenu as the menu
property of the application's
WindowedApplication. To assign a FlexNativeMenu as the context menu for a portion of the user interface,
call the FlexNativeMenu instance's setContextMenu()
method, passing the UI object
as an argument. Call the FlexNativeMenu component's display()
method to display the
menu as a pop-up menu anywhere on one of the application's windows.
To detect when menu items commands are triggered, register a listener for the itemClick
event. You can also register a listener for the menuShow
event to determine when
any menu or submenu is opened.

The <mx:FlexNativeMenu>
tag supports the following tag attributes:
<mx:FlexNativeMenu Properties dataDescriptor="mx.controls.treeClasses.DefaultDataDescriptor" dataProvider="undefined" keyEquivalentField="keyEquivalent" keyEquivalentFunction="undefined" keyEquivalentModifiersFunction="undefined" labelField="label" labelFunction="undefined" mnemonicIndexField="mnemonicIndex" mnemonicIndexFunction="undefined" showRoot="true" Events itemClick="No default" menuShow="No default" />
Related API Elements
Property | Defined By | ||
---|---|---|---|
![]() | constructor : Object
A reference to the class object or constructor function for a given object instance. | Object |
Method | Defined By | ||
---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener
receives notification of an event. | EventDispatcher | |
![]() |
Dispatches an event into the event flow. | EventDispatcher | |
![]() |
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | EventDispatcher | |
![]() |
Indicates whether an object has a specified property defined. | Object | |
![]() |
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | |
![]() |
Indicates whether the specified property exists and is enumerable. | Object | |
![]() |
Removes a listener from the EventDispatcher object. | EventDispatcher | |
![]() |
Sets the availability of a dynamic property for loop operations. | Object | |
![]() |
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | |
![]() |
Returns the string representation of the specified object. | Object | |
![]() |
Returns the primitive value of the specified object. | Object | |
![]() |
Checks whether an event listener is registered with this EventDispatcher object or any of
its ancestors for the specified event type. | EventDispatcher |
Method | Defined By |
---|
Event | Summary | Defined By | ||
---|---|---|---|---|
![]() | [broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher | ||
![]() | [broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher |
Wed Nov 21 2018, 06:34 AM -08:00