包 | flash.display |
类 | public class NativeMenuItem |
继承 | NativeMenuItem EventDispatcher Object |
子类 | ContextMenuItem |
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
菜单项可以是一个命令、一个子菜单或一条分隔线:
- 要创建一个命令项,请调用 NativeMenuItem 构造函数,为标签传递一个字符串,并为
isSeparator
参数传递false
。 - 要创建一个子菜单,请为父菜单创建一个命令项,并将子菜单的 NativeMenu 对象分配给该命令项的
submenu
属性。也可以调用父级 NativeMenu 对象的addSubmenu()
方法来创建该项并同时设置submenu
属性。 - 要创建一个分隔符,请调用 NativeMenuItem 构造函数,为标签传递一个空字符串,并为
isSeparator
参数传递true
。
在一个项目或父菜单上侦听 select
事件可以检测何时选择某一菜单命令。子菜单和分隔符都不调度 select 事件。侦听 preparing
事件以确定菜单项何时要通过等效键显示或激活。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
checked : Boolean
控制此菜单项是否显示复选标记。 | NativeMenuItem | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
data : Object
与此菜单项关联的任意数据对象。 | NativeMenuItem | ||
enabled : Boolean
控制是否启用此菜单项。 | NativeMenuItem | ||
isSeparator : Boolean [只读]
报告此项目是否为菜单分隔线。 | NativeMenuItem | ||
keyEquivalent : String
此菜单项的等效键。 | NativeMenuItem | ||
keyEquivalentModifiers : Array
等效功能键的键控代码数组。 | NativeMenuItem | ||
label : String
此菜单项的显示字符串。 | NativeMenuItem | ||
menu : NativeMenu [只读]
包含此项目的菜单。 | NativeMenuItem | ||
mnemonicIndex : int
菜单项标签中的助记键字符的位置。 | NativeMenuItem | ||
name : String
此菜单项的名称。 | NativeMenuItem | ||
submenu : NativeMenu
与此菜单项关联的子菜单。 | NativeMenuItem |
方法 | 由以下参数定义 | ||
---|---|---|---|
创建新的 NativeMenuItem 对象。 | NativeMenuItem | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
创建 NativeMenuItem 对象的副本。 | NativeMenuItem | ||
将事件调度到事件流中。 | EventDispatcher | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
[覆盖]
返回一个字符串,其中包含 NativeMenuItem 对象的所有属性。 | NativeMenuItem | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
在显示包含此项目的菜单的前一刻由此 NativeMenuItem 对象调度。 | NativeMenuItem | |||
在包含它的菜单显示之前的一瞬间且按下其等效键时由此 NativeMenuItem 对象调度。 | NativeMenuItem | |||
每当用户选择菜单项时调度。 | NativeMenuItem |
checked | 属性 |
data | 属性 |
enabled | 属性 |
isSeparator | 属性 |
keyEquivalent | 属性 |
keyEquivalent:String
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
此菜单项的等效键。
使用小写字母设置 keyEquivalent
可以分配无 Shift 功能键的快捷键。使用大写字母设置此属性可以分配具有 Shift 功能键的快捷键。
默认情况下,等效功能键(Windows 或 Linux 中为 Ctrl,Mac OS X 中为 Command)作为等效键的一部分包括在内。如果希望等效键是一个没有修饰符的键,可将 keyEquivalentModifiers
属性设置为一个空数组。
实现
public function get keyEquivalent():String
public function set keyEquivalent(value:String):void
keyEquivalentModifiers | 属性 |
keyEquivalentModifiers:Array
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
等效功能键的键控代码数组。
使用 Keyboard 类中定义的常量可以指定功能键代码。有效的功能键包括:
Keyboard.ALTERNATE
Keyboard.COMMAND
Keyboard.CONTROL
如果未指定任何功能键,则默认情况下,将在 Windows 或 Linux 中分配 Keyboard.CONTROL
键,在 Mac OS X 中分配 Keyboard.COMMAND
键。如果不希望等效键包括这些功能键,可将此属性设置为空数组。
如果为 keyEquivalent
属性分配一个大写字母,则会自动将 Shift 键用作修饰符。将 keyEquivalentModifier
设置为一个空数组不会撤消将 Shift 键用作修饰符。
实现
public function get keyEquivalentModifiers():Array
public function set keyEquivalentModifiers(value:Array):void
相关 API 元素
label | 属性 |
menu | 属性 |
menu:NativeMenu
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
包含此项目的菜单。
实现
public function get menu():NativeMenu
mnemonicIndex | 属性 |
name | 属性 |
submenu | 属性 |
submenu:NativeMenu
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
与此菜单项关联的子菜单。
将 NativeMenu 对象分配给此属性将更改该菜单项的外观和行为。子菜单项将显示子菜单图标,并且不再调度 select 事件。
注意:将菜单添加为其自身的一个子菜单(在循环引用中)可能导致应用程序挂起。
实现
public function get submenu():NativeMenu
public function set submenu(value:NativeMenu):void
相关 API 元素
NativeMenuItem | () | 构造函数 |
public function NativeMenuItem(label:String = "", isSeparator:Boolean = false)
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
创建新的 NativeMenuItem 对象。
要创建一个菜单命令,请将 label
参数设置为包含该显示标签的字符串,并将 isSeparator
设置为 false
。
要创建一个子菜单命令,请创建一个命令项,然后将子菜单的 NativeMenu 对象分配给该命令项的 submenu
属性。将该项添加到父菜单。
要创建一个分隔符,请将 label
参数设置为空字符串,并将 isSeparator
设置为 true
。
使用 NativeMenu addItem()
和 removeItem()
方法在菜单中添加和删除项目。
label:String (default = " ") — 用于该项目的显示标签,或用于分隔符的空字符串。
| |
isSeparator:Boolean (default = false ) — 设置为 true 可创建分隔符;否则设置为 false 。
|
相关 API 元素
clone | () | 方法 |
public function clone():NativeMenuItem
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
创建 NativeMenuItem 对象的副本。
返回NativeMenuItem |
toString | () | 方法 |
displaying | 事件 |
flash.events.Event
属性 Event.type =
flash.events.Event.DISPLAYING
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
在显示包含此项目的菜单的前一刻由此 NativeMenuItem 对象调度。
preparing
事件替代 displaying
事件并提供其他功能。侦听 preparing
事件或 displaying
事件,但不能同时侦听两者。
Event.DISPLAYING
常量定义 displaying
事件对象的 type
属性值。
注意:无论目标是否出现在显示列表中,此事件都不会通过“捕获阶段”,而是被直接调度给此目标。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 将要显示的 对象。 |
preparing | 事件 |
flash.events.Event
属性 Event.type =
flash.events.Event.PREPARING
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 2.6 |
在包含它的菜单显示之前的一瞬间且按下其等效键时由此 NativeMenuItem 对象调度。
在包含它的菜单显示之前或用户按下其等效键时,侦听此事件以更新该项。在完全计算等效键之前调度 preparing
事件。您可以在 preparing
事件处理函数中从菜单中启用、禁用或删除菜单项,这些更改将在处理等效键时生效。例如,如果您删除或禁用此菜单项,则事件顺序将有效地被取消,不调度 select
事件。preparing
事件还由菜单中的其他项调度。
preparing
事件替代 displaying
事件并提供其他功能。侦听 preparing
事件或 displaying
事件,但不能同时侦听两者。
Event.PREPARING
常量定义 preparing
事件对象的 type
属性值。
注意:无论目标是否出现在显示列表中,此事件都不会通过“捕获阶段”,而是被直接调度给此目标。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 调度此事件的对象。 |
target | 调度此事件的对象。 |
select | 事件 |
flash.events.Event
属性 Event.type =
flash.events.Event.SELECT
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 |
每当用户选择菜单项时调度。
select
事件将从此项目冒泡 到包含菜单,并贯穿父菜单链到达根菜单对象。该事件对象的 target
属性将引用此 NativeMenuItem 对象;currentTarget
属性将引用调度对象(此 NativeMenuItem 或祖先级 NativeMenu 对象)。
注意:如果包含该菜单的窗口处于全屏模式 (stage.displayState == StageDisplayState.FULL_SCREEN
),则当用户输入菜单项的键盘等效项时,NativeMenuItem 对象不会 调度 select
事件。
Event.SELECT
常量定义 select
事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 对象,已在其中选定了一个项目。 |
Tue Jun 12 2018, 11:04 AM Z