为什么我必须点击电影才能让我的角色做出回应?

Why do I have to click the movie for my character to respond?

我的电影有 3 帧,第一帧是带有播放按钮的欢迎屏幕,按下它并跳转到第 2 帧后,我必须单击电影才能让我的 character/player 响应并按箭头移动.如果我从放在第 3 帧的游戏结束屏幕回到第 2 帧,也会发生同样的情况。

我自然地使用 gotoAndPlay(); 来导航框架。

如果它与我的 frame2 代码有关,我会 post 它需要什么。我想知道为什么会这样以及如何解决它。谢谢!

点击你的角色给它焦点。 只有*获得焦点的对象接收键盘事件。

如果您在角色对象上注册键盘事件的侦听器,则必须先单击它,然后它才能接收到这些事件。

但是,KeyboardEvents 在显示列表中冒泡并最终到达最顶层的容器,即舞台。这给你两个选择:

  1. 通过将应该具有焦点的对象分配给 stage.focus 属性 来自行处理焦点。这基本上就是在您当前的情况下执行点击操作。http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Stage.html#focus
  2. 在舞台上注册您的听众

用户只需单击 Flash 舞台上的任意位置即可添加键盘焦点。通常,实现此目的的一个好方法是使用开始按钮或类似的东西作为 mouse/keyboard 焦点的第一位。