| 套件 | flash.display |
| 類別 | public class NativeMenuItem |
| 繼承 | NativeMenuItem EventDispatcher Object |
| 子類別 | ContextMenuItem |
| 語言版本: | ActionScript 3.0 |
| 執行階段版本: | AIR 1.0 |
選單項目可以是命令、子選單或分隔符號字行:
- 若要建立命令項目,請呼叫 NativeMenuItem 建構函式,如此便會傳入字串做為 label 的值,以及傳入
false做為isSeparator參數的值。 - 若要建立子選單,請為父選單建立命令項目,再將此子選單的 NativeMenu 物件指派給該項目的
submenu屬性。您也可以呼叫父 NativeMenu 物件的addSubmenu()方法,同時建立項目並設定submenu屬性。 - 若要建立分隔符號,請呼叫 NativeMenuItem 建構函式,如此便會傳入空字串做為 label 的值,以及傳入
true做為isSeparator參數的值。
請針對項目或父選單偵聽 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.ALTERNATEKeyboard.COMMANDKeyboard.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, 03:47 PM Z
隱藏繼承公用屬性
顯示繼承公用屬性