為了menuBar的第一層事件改寫AS的mouseDownHandle()

LINEで送る
[`evernote` not found]

由於MeunBar第一層的MouseDown不會直接被監聽到
但我是希望在沒有第二層下的狀況也要出個聲音
本來是想直接override mouseDownHandler()
可是他一直跟我說要”使用override標籤必須要覆寫已存在函式”
想了很久 用下列的方式算是測出來了

public function myMenuBar()
  {
   super();
   this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
  }
  private function mouseDownHandler(event:MouseEvent):void{
   var item:IMenuBarItemRenderer = IMenuBarItemRenderer(event.target);
         var index:int = item.menuBarItemIndex;
         var m:Menu = getMenuAt(index);
                if (!(m.dataDescriptor.isBranch(item.data, item.data) &&
                    m.dataDescriptor.hasChildren(item.data, item.data)))
                {
                    trace("only one!!");
                }
  }

這樣寫會在執行完MenuBar.as的 mouseDownHandler()後
再來執myMenuBar.as的 mouseDownHandler()
如果要發部event的話
現在是想到用modellocator的方式…….

但是…怎麼覺得有點像硬湊出來的@@