2011-10-22 68 views
0

我正在尋找一種方法來使用我的KEY_DOWN事件觸發我的SimpleButton中的downState。我希望有一種方法可以做到這一點,而無需將其切換到MovieClip自定義按鈕。在AS3中使用KeyDown偵聽器觸發SimpleButton狀態

這裏是我的代碼:

stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDown);

private function keyDown(e:KeyboardEvent):void 
{ 
    switch(e.keyCode) 
    { 
     case 32: 
      trace("Space Down"); 
      this.actionButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
    break; 
    } 
} 

的actionButton是我的SimpleButton。我試過分派CLICK事件和MOUSE_DOWN事件,但都沒有工作。任何建議都會很好。

+0

目前還不清楚你的'SimpleButton'是你自己的班級,但它是從什麼擴展而來的?雪碧?或者你在談論Adobe的SimpleButton類? – eLouai

+0

@eLouai我正在談論Adobe的SimpleButton類。 – brenjt

回答

0

你的代碼看起來不錯。

有時,Flash IDE程序中的事件處理無法正常工作。 特別是在處理鍵盤事件時。調試器以某種方式「竊取」這些事件。 在ide或調試器之外進行測試。

讓我們知道如果這是問題。