WEB开发网
开发学院图形图像Flash 第二章 ActionScript 3.0 动画基础Ⅱ[FL 基理译] 阅读

第二章 ActionScript 3.0 动画基础Ⅱ[FL 基理译]

 2009-05-30 12:08:54 来源:WEB开发网   
核心提示: 请注意,每个事件类型都使用了同一个处理函数,第二章 ActionScript 3.0 动画基础Ⅱ[FL 基理译](9),输出所触发的事件类型的名称,鼠标位置 除了鼠标事件外,可以这样写:stage.focus = sprite;在很多情况下,侦听键盘事件是否有焦点很有意义,对于文档类还有两

请注意,每个事件类型都使用了同一个处理函数,输出所触发的事件类型的名称。

鼠标位置

除了鼠标事件外,对于文档类还有两个非常重要属性用于表示鼠标当前的位置:mouseX 和 mouseY。请注意,影片剪辑的位置,返回的值是鼠标的位置与影片剪辑的注册点的相对位置。例如,有一个名为 sprite 的 Sprite 影片,在舞台的 100,100 位置,而鼠标的位置在 150,250,你会得到如下结果:

mouseX 为 150

mousey 为 250

sprite.mouseX 为 50

sprite.mouseY 为 150

请注意鼠标位置与影片位置的相对关系。

键盘事件

键盘事件已被 AS 3 划分到另一个区域中。例如,在 AS 2 中,影片剪辑会自动侦听键盘事件,但只在某种情况下才接收这些事件。所以,最好增加一个专门用来做侦听器的影片剪辑,有时,影片剪辑接收了多个事件但被看作是一个键盘事件,这样就不对了。在 AS 2 的组成框架中,很大部一部分都是为键盘交互服务的,比如 Flash Player 体系中的:tab(table)管理,焦点(focus)管理及在文本框中对于 Enter 键与 Table 键的处理等。现在好了,键盘事件的名称与鼠标事件的相似,都是定义好的字符串,也可为 KeyboardEvent 类的属性。只有两种:

KEY_DOWN
KEY_UP

我们可以在一个特殊的对象上侦听键盘事件,就像上面那个鼠标侦听的例子一样。为了实现这个功能,我们需要设置对象的焦点,以便能够捕获这些事件,可以这样写:

stage.focus = sprite;

在很多情况下,侦听键盘事件是否有焦点很有意义,实现它只需直接对舞台进行键盘侦听。下面看一个示例:

package {
 import flash.display.Sprite;
 import flash.events.KeyboardEvent;
 public class KeyboardEvents extends Sprite {
  public function KeyboardEvents() {
   init();
  }
  private function init():void {
   stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyboardEvent);
   stage.addEventListener(KeyboardEvent.KEY_UP,onKeyboardEvent);
  }
  public function onKeyboardEvent(event:KeyboardEvent):void {
   trace(event.type);
  }
 }
}

上一页  4 5 6 7 8 9 10  下一页

Tags:第二章 ActionScript 动画

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接