我有一個flashclip內的TextInput,通過as3添加到舞臺上。 此mc加入舞臺的時刻,它將鍵盤事件(按下鍵和按鍵事件)分配到主舞臺(主應用程序舞臺),並將主舞臺焦點設置到主舞臺。沒有捕捉關鍵事件
到目前爲止這麼好。
問題是,當我輸入ENTER時,我發現KEY_DOWN,但是當我釋放按鍵ENTER時,我的KEY_UP事件沒有被我的函數分配給該事件。
任何機構都知道爲什麼?
它只適用於我點擊Flash播放器。
private function initAdded(e:Event){
_main.stage.addEventListener(KeyboardEvent.KEY_DOWN,checkKeysDown);
_main.stage.addEventListener(KeyboardEvent.KEY_UP,checkKeysUp);
MovieClip(_main).setStageFocus()
}
private function checkKeysDown(e:KeyboardEvent):void {
if (e.keyCode == 13) {
trace('enter down')
}
}
private function checkKeysUp(e:KeyboardEvent):void {
if(e.keyCode == 13){
trace('enter up')
}
}
顯示一些代碼,請 – 2012-03-21 13:04:45
我們需要至少可以看到:的addEventListener代碼,監聽功能 – 2012-03-21 13:11:01
私有函數initAdded(五:事件){ \t \t \t \t \t \t _main.stage.addEventListener(KeyboardEvent.KEY_DOWN,checkKeysDown) ; \t \t \t _main.stage.addEventListener(KeyboardEvent.KEY_UP,checkKeysUp); \t \t \t的MovieClip(_main).setStageFocus() \t \t \t \t } \t私有 功能checkKeysDown(E:的KeyboardEvent):無效 \t \t { \t \t \t如果(e.keyCode == 13) \t \t \t {trace('enter down') } } private function checkKeysUp(e:KeyboardEvent):void \t \t { \t \t \t如果(e.keyCode == 13){ 跟蹤( '進入了') }} 關鍵 – 2012-03-21 13:12:47