Flexでキーボードイベントを取得するのに詰まる

Flex 3でコントロールのfocus関係なしにキーボードの入力を取得するには、
http://livedocs.adobe.com/flex/3_jp/html/help.html?content=events_11.html
http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=304
の2つの方法があります。


前者は、applicationに対してaddEventListenerする方法。
後者は、stageに対してaddEventListenerする方法。
stageはcreationComplete時にはセットされておらず、
applicationComplete時には取得できるので注意。


…といいつつ、以下のようなコードでイベントが取れなくて
2時間くらい悩んだ。

...
  application.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
...
private function keyDownHandler(evt:KeyboardEvent):void {
  Alert.show('' + evt.keyCode);
}

原因は、keyDownHandlerってものが普通にUIComponentにもあって、
そっちを参照しに行っていたから。
ギギギギギギギ