Flex鍵盤事件的監聽機制
本文和大家重點討論一下Flex鍵盤事件的監聽,首先,要理解一個概念,Flex鍵盤事件發生的對象,通過實踐我知道其實是容器,菜譜上分為stage和HBox等普通容器。
Flex鍵盤事件的監聽
Flex的事件監聽機制很完善,下面主要簡單的講一下Flex鍵盤事件的監聽。
首先,要理解一個概念,Flex鍵盤事件發生的對象,通過實踐我知道其實是容器,菜譜上分為stage和HBox等普通容器;
其次,要明白Flex鍵盤事件也是事件,事件的監聽無非是用事件處理器監聽(常用的如click),這里用的是keyDown;或者用addEventLisner的方式;
在下面的例子里,我兩種都用了,application用的是addEventLisner,自定義控件com里用的是keydown;在事件觸發的時候,前種方式會在后者之前執行。
code view:
ComA代碼:
- <?xml version=”1.0″ encoding=”utf-8″?>
- <mx:HBox xmlns:mx=”http://www.adobe.com/2006/mxml“ keyDown=”keyHalder(event)” width=”400″ height=”300″>
- <mx:Script>
- <![CDATA[
- public function keyHalder(event:KeyboardEvent):void
- {
- switch(event.keyCode)
- {
- case 13:
- trace("按的是回車!");
- break;
- case 32:
- trace("按的是空格!");
- break;
- default:
- trace("不是空格也不是回車!");
- break;
- }
- }
- ]]>
- </mx:Script>
- <mx:Button label=”Button”/>
- </mx:HBox>
Application代碼:
- <?xml version=”1.0″ encoding=”utf-8″?>
- <mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml“ creationComplete=”init()” layout=”absolute” xmlns:ns1=”*”>
- <mx:Script>
- <![CDATA[
- public function init():void
- {
- this.addEventListener(KeyboardEvent.KEY_UP,keyHalder1);
- }
- public function keyHalder1(evt:KeyboardEvent):void
- {
- trace(evt.keyCode.toString());
- }
- ]]>
- </mx:Script>
- <mx:TextInput x=”10″ y=”171″ id=”tp1″/>
- <ns1:ComA x=”243″ y=”19″>
- </ns1:ComA>
- </mx:Application>
【編輯推薦】