转载地址:http://blog.csdn.net/huanghr_1/article/details/6195812
一、说明
1、只有当监听的对象获取焦点后,才能出接收到KeyboardEvent.KEY_DOWN event。
二例子
为应用程序的stage或组件的keyDown事件添加监听器,读取KeyboardEvents的keyCode属性。
使用keyDown事件处理器监听KeyboardEvent,这些类都扩展自UIComponent。KeyboardEvent
类定义了一个keyCode属性用于存储用户按下的键码,例如:
Code View:
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300"
keyDown="keyHandler(event)" backgroundColor="#0000ff">
<mx:Script>
<![CDATA[
import flash.events.KeyboardEvent;
private function keyHandler(event:KeyboardEvent):void
{
switch(event.keyCode){
case 13:
trace("Enter pressed");
break;
case 32:
trace("SpaceBar pressed");
break;
case 16:
trace("ShiftKey pressed");
break;
case 112:
trace("F1pressed");
break;
}
}
]]>
</mx:Script>
<mx:Button label="One"/>
</mx:HBox>
请注意这个类,只有当button被激活时才会监听到它发出的事件。如果你删除了button,那
么就没有东西可以激活了,keyHandler函数也永远不会被调用。要想在程序中捕获所有的
KeyEvents事件而不管有没有组件被激活,请添加下面的句子:
Code View:
addedToStage="stage.addEventListener(KeyboardEvent.KEY_DOWN, keyHandler)"
来源:http://hi.baidu.com/kiss_you_and/blog/item/f1e00c12404cb3caa7ef3f95.html