這讓我感到頭痛了2個小時,然後才明白了。
我決定把它發佈在這裏,以幫助別人不拉他們的頭髮:)。鍵盤事件as3不能正常工作
本質上,這個錯誤是我沒有收到我的Flash builder環境中的鍵盤事件(使用adobe flash cs5可以看到相同的bug /問題)。我設置stage.focus =舞臺,沒有幫助。我添加了其他事件監聽器(mouse_down,frame_enter),這些監聽器工作正常,我添加了MovieClip子項並在這些子項上監聽事件,但仍然是同樣的問題。
package
{
public class Test extends Sprite
{
public function Test()
{
this.addEventListener(Event.ADDED_TO_STAGE,init);
}
public function init(stage:Stage):void
{
this.removeEventListener(Event.ADDED_TO_STAGE,init);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
}
private function keyPressed(e:KeyboardEvent):void
{
trace("keyPressed");
}
private function keyReleased(e:KeyboardEvent):void
{
trace("keyReleased");
}
}
}
此代碼可用嗎?或者不工作? – apscience
此代碼無法正常工作,完全如上所述。問題是爲什麼它不起作用。我終於弄明白了,在這裏發佈問題讓其他人回答(或者我最終會自己回答)。一個線索,環境是錯誤的原因。 – eLouai