这让我感到头痛了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