当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > ActionScript图文教程(十四)

Flash动画制作
Flash MX 2004播放器版本检测
Macromedia将发布新版Flash
Flash MX 2004的绘图新工具
微软Sparkle将取代Flash?
Macromedia给FlashMX升级
Flash和FW合作旋转文字动画
AS代码2.0:新的语言元素
AS代码2.0:脚本编辑和调试
AS代码2.0:面向对象模型
Flash MX 2004时间轴特效实例
Flash MX 2004行为功能初体验
想说透明也容易 课件导入图片背景透明技巧
Flash MX 2004对DRK组件兼容性
Flash MX 2004 总览
Flash MX 2004 支持的HTML标签
Flash MX 2004 支持的 css
Flash MX 2004新功能:行为1
LOADING的测试
LOADING制作方法
商业Flash设计经验谈(速度感)

Flash动画制作 中的 ActionScript图文教程(十四)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 55 ::
收藏到网摘: n/a

  2.6事件监听
  事件有一个习气,就是“拉帮结派”,正常情况下,某些对象是接收不到某些事件的,比方说一个动态文本就不能接受鼠标事件。如果我们编写这样的代码为一个动态文本指定事件处理代码:

  myTextField_txt.onMouseDown = function(){

  }

  当我们在它上面单击鼠标时,代码并不会执行,因为它压根就不会接收到鼠标事件。要想让它正确接受鼠标事件,必须再加上这样的代码:

  Mouse.addListener(myTextField);

  这个语句就是让myTextField向Mouse对象“报道”,这个语句执行之后,myTextField就具有了“监听”鼠标事件的功能了。 特别需要注意一点的,一旦某个对象被注册为Mouse的监听器,它将会接受到鼠标发出的所有事件,不论发生事件时鼠标是否在对象上方,根据这个原理,我们来制作一个小的鼠标监视器。

  首先向场景中添加两个文本,上面一个静态文本,下面一个动态文本,将动态文本命名为mousePosition_txt。 

     

  在影片的最后一帧上单击,打开脚本面板,输入这样的代码:


  代码很简单,第一句停下影片准备接收事件,接下来将mousePostion_Txt注册为接收鼠标事件,然后使用事件处理函数的方法捕捉onMouseMove事件并将事件发生时的鼠标位置显示到mousePostion_txt中,以上这个小程序的执行效果如下图。
         

  除了监听鼠标事件之外,我们还可以监听按键事件和场景事件:

  Key.addListener (historyArray);

  Stage.addListener (historyArray);

  监听器使用过之后可以使用removeListener将其删除,例如:

  Key.removeListener (historyArray);

  Mouse.removeListener (historyArray);

  Stage.removeListener (historyArray);