Menü olaylarını işleme

Flash Player 9 ve üstü, Adobe AIR 1.0 ve üstü

Kullanıcı menüyü veya bir menü öğesini seçtiğinde, menü olayları gönderir.

Menü sınıfları için olay özeti

Menü olaylarını işlemek için menülere veya ayrı ayrı öğelere olay dinleyicileri ekleyin.

Nesne

Gönderilen olaylar

NativeMenu (AIR)

Event.PREPARING (Adobe AIR 2.6 ve üstü)

Event.DISPLAYING

Event.SELECT (alt öğelerden ve alt menülerden yayılan)

NativeMenuItem (AIR)

Event.PREPARING (Adobe AIR 2.6 ve üstü)

Event.SELECT

Event.DISPLAYING (üst menüden yayılan)

ContextMenu

ContextMenuEvent.MENU_SELECT

ContextMenuItem

ContextMenuEvent.MENU_ITEM_SELECT

Event.SELECT (AIR)

Menü olaylarını seç

Bir menü öğesini tıklatmayı işlemek için, NativeMenuItem nesnesine select olayına ilişkin bir olay dinleyicisi ekleyin:

var menuCommandX:NativeMenuItem = new NativeMenuItem("Command X"); 
menuCommandX.addEventListener(Event.SELECT, doCommandX)

Select olayı mevcut menülere baloncuk oluşturduğundan, bir üst menüdeki select olaylarını da dinleyebilirsiniz. Menü düzeyinde dinleme sırasında, hangi menü komutunun seçildiğini belirlemek için olay nesnesinin target özelliğini kullanabilirsiniz. Aşağıdaki örnek, seçilen komutun etiketini gösterir:

var colorMenuItem:NativeMenuItem = new NativeMenuItem("Choose a color"); 
var colorMenu:NativeMenu = new NativeMenu(); 
colorMenuItem.submenu = colorMenu; 
 
var red:NativeMenuItem = new NativeMenuItem("Red"); 
var green:NativeMenuItem = new NativeMenuItem("Green"); 
var blue:NativeMenuItem = new NativeMenuItem("Blue"); 
colorMenu.addItem(red); 
colorMenu.addItem(green); 
colorMenu.addItem(blue); 
 
if(NativeApplication.supportsMenu){ 
    NativeApplication.nativeApplication.menu.addItem(colorMenuItem); 
    NativeApplication.nativeApplication.menu.addEventListener(Event.SELECT, colorChoice); 
} else if (NativeWindow.supportsMenu){ 
    var windowMenu:NativeMenu = new NativeMenu(); 
    this.stage.nativeWindow.menu = windowMenu; 
    windowMenu.addItem(colorMenuItem); 
    windowMenu.addEventListener(Event.SELECT, colorChoice); 
} 
 
function colorChoice(event:Event):void { 
    var menuItem:NativeMenuItem = event.target as NativeMenuItem; 
    trace(menuItem.label + " has been selected"); 
} 

ContextMenuItem sınıfını kullanıyorsanız, select olayını veya menuItemSelect olayını dinleyebilirsiniz. menuItemSelect olayı size bağlam menüsünü içeren nesne hakkında ek bilgi verir, ancak mevcut menülere kabarcık oluşturmaz.

Menü olaylarını görüntüleme

Menü açılışını işlemek için, menü görüntülenmeden önce gönderilen displaying olayı için dinleyici ekleyebilirsiniz. Menüyü güncellemek için, örneğin öğeler ekleyerek veya kaldırarak ya da ayrı ayrı öğelerin etkin veya işaretli durumlarını güncelleyerek görüntüleme olayını kullanabilirsiniz. Ayrıca menuSelect olayını bir ContextMenu nesnesinden dinleyebilirsiniz.

AIR 2.6 ve üstünde bir menü görüntüleme veya klavye kısayoluyla öğe seçmeye karşılık olarak bir menüyü güncellemek için preparing olayını kullanabilirsiniz.