欢迎来到天天文库
浏览记录
ID:41224362
大小:638.50 KB
页数:47页
时间:2019-08-19
《Flash3.0AS3.0事件侦听机制》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Flash动画设计与制作Lesson3事件侦听机制事件的基本概念事件对象每一个具体的事件都是一个对象每个事件对象不仅保存了关于当前时间的一组特定信息(属性),还包含了用于操作该事件的几个方法。AS3中每个事件类中都定义了一系列事件类型,每个具体的事件对象都对应某一种类型。事件类EventEventKeyboardEventTextEventTimeEventContextMenuEventSoundEventMouseEvent…其他子类10/15/20212事件帧听过程1.确定事件目标一个用于作为事件发送目标的对象被称为事件目标2.注册事件侦听方法:addEventListener()可
2、以在一个对象上注册若干个事件帧听函数3.执行事件响应函数当事件目标在列表中查到与接收到的时间对象相对应的响应函数后,事件对象将作为一个参数传递给该函数,然后执行这个事件响应函数。10/15/20213事件侦听的语法结构1.注册事件侦听函数要且只能用addEventListener()方法publicfunctionaddEventListener(type:String,listener:Function,useCapture:Boolean=false,priority:int=0,useWeakReference:Boolean=false):void用于控制在事件流的不同阶段响应事件
3、控制侦听的优先级指定此侦听是否为弱引用表示特定事件类型的字符串事件处理函数的函数名函数的引用不要使用圆括号10/15/20214事件侦听的语法结构2.注销侦听函数removeEventListener()方法3.定义事件处理函数publicfunctionremoveEventListener(type:String,listener:Function,useCapture:Boolean=false):void10/15/20215event参数和this指针1.event参数当对象接收到某个事件后,它就把这个事件对象以参数的形式传递到相应的处理函数中,并调用这个函数。由于时间对象中包含
4、了这个特定时间的所有信息,在处理函数里就可以利用参数访问到这个事件对象中包含的内容。测试一下吧10/15/20216event参数和this指针2.处理函数中的this指针关键字this指当前对象。在事件处理函数中使用this指针时,根据处理函数定义的位置不同,this所指的对象也有所区别。测试一下吧10/15/20217常用内建事件1.常用鼠标事件鼠标事件类MouseEvent是Event类的一个子类常用的属性10个常量,分别表示10种不同的鼠标事件范例:砸金蛋效果设计过程动态绘制直线效果设计过程10/15/20218常用内建事件2.常用键盘事件键盘事件类KeyboardEvent是Ev
5、ent类的一个子类常用的属性两个键盘事件类型KEY_DOWN和KEY_UP范例用键盘控制上下左右行走效果关键代码发射子弹效果设计过程10/15/20219常用内建事件3.Timer类及相关事件Timer不是事件类,但是可以触发和接受不同类型的事件。Timer用于在指定的时间序列上执行代码。当创建一个定时器类的对象后,同时就指定了两个数值:事件间隔和执行次数,之后可以注册一个事件侦听器,让处理函数按设定的时间间隔执行指定的次数。Timer类的常用属性与方法声明:publicfunctionTimer(delay:Number,repeatCount:int=0)Timer类可以广播和接受两个
6、事件:timer和temerComplete(在TimerEvent类中被定义为常量TIMER和TIMER_COMPLETE)范例:自动图片浏览效果设计过程10/15/202110常用内建事件4.TextField类及相关事件用于创建可视的文本域可接收的事件范例:自动出题程序效果在60s内计算程序自动编写的20以内的加法算式,答对后自动生成下一题。设计过程:界面布局:5个静态文本框作为固定元素;5个动态文本框(add1,add2,msg,rightNum,leftNum)和1个输入文本框(sum),作为程序中的动态信息显示部分。代码编写10/15/202111其他常用事件1.ENTER_F
7、RAME事件(进入帧事件)在播放头进入一个新的帧的时候触发如果只有一帧,则以帧速不断被触发。任何可视对象都可以接收这个事件。例:addEventListener(Event.ENTER_FRAME,handle);mc.addEventListener(Event.ENTER_FRAME,handle);10/15/202112其他常用事件2.ADDED事件在一个可视对象被添加到显示列表中触发。任何可视对象都可以接收这个
此文档下载收益归作者所有