Flash MX2004入门与进阶实例:6.3 事件和事件处理函数
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-09
第六章 动作脚本入门 第三节 事件和事件处理函数(2) (3)定义按钮的动作脚本 选择舞台上的第1个按钮,打开【动作】面板,在其中输入“on(”,这时弹出一个鼠标事件下拉列表,从其中双击【press】,然后输入: ){ play(); } 这样,第一个按钮的动作脚本就定义完成了,完整的动作脚本是: on(press){ play(); } 这个动作脚本的功能是,当用鼠标单击这个按钮时,舞台上的动画开始播放。 第2个按钮的动作脚本和第1个的定义过程类似,先选择第2个按钮,在【动作】面板中按照前面的方法定义这个按钮的动作脚本: on(press){ stop(); } 这个动作脚本的功能是,当用鼠标单击这个按钮时,舞台上的动画停止播放。 好,下面我们按快捷键Ctrl+Enter,测试一下动画吧,怎么样?按钮已经可以控制小球的跳动了吧(文件路径:配套光盘/……/按钮控制小球跳动(1).fla)? 3.事件处理函数方法 事件处理函数方法是一种类方法,事件在该类的实例上发生时产生调用。例如,Button(按钮)类定义 onPress 事件处理函数,只要按下鼠标就对Button对象调用该处理函数。Flash Player在相应事件发生时自动调用事件处理函数。
默认情况下,事件处理函数方法是未定义的:在发生特定事件时,将调用其相应的事件处理函数,但应用程序不会进一步响应该事件。要让应用程序响应该事件,需要使用 function语句定义一个函数,然后将该函数分配给相应的事件处理函数。这样,只要发生该事件,就自动调用分配给该事件处理函数的函数。
事件处理函数由三部分组成:事件所应用的对象、对象的事件处理函数方法的名称和分配给事件处理函数的函数。事件处理函数的基本结构为:
对象.事件处理函数方法名称 = function () {
???? ?// 你编写的程序代码,对事件作出反应
}
下面我们还是针对上面那个实例,用事件处理函数方法编写程序来实现按钮控制小球跳动的功能。
(1)定义按钮实例名称
按照前面的方法,将配套光盘上的小球跳动动画文件打开,并且引用两个按钮元件实例。分别单击两个按钮实例,在【属性】面板中分别定义它们的实例名称为:play_btn和stop_btn。
(2)定义事件处理函数
新建一个图层,并将它重新命名为“action”。选择这个图层的第1帧,在【动作】面板中定义这个帧的动作脚本为:
play_btn.onPress=function(){
??? play();
}
stop_btn.onPress=function(){
??? stop();
}
测试一下,怎么样?和前面的效果一样吧(文件路径:配套光盘/……/按钮控制小球跳动(2).fla)。
4.事件侦听器
事件侦听器让一个对象(称作侦听器对象)接收由其他对象(称作广播器对象)生成的事件。广播器对象注册侦听器对象以接收由该广播器生成的事件。例如,你可以注册按钮实例可以从文本字段对象接收onChanged 通知。这里需要说明的是,可以注册多个侦听器对象以从一个广播器接收事件,也可以注册一个侦听器对象以从多个广播器接收事件。
事件侦听器的事件模型类似于事件处理函数方法的事件模型,但有两个主要差别:
u?????? 你向其分配事件处理函数的对象不是发出该事件的对象。
u?????? 你调用广播器对象的特殊方法addListener() ,该方法将注册侦听器对象以接收其事件。
要使用事件侦听器,你需要用具有该广播器对象生成的事件名称的属性创建侦听器对象。然后,将一个函数分配给该事件侦听器(以某种方式响应该事件)。最后,你在正广播该事件的对象上调用addListener() ,向它传递侦听器对象的名称。
事件侦听器模型的一般形式为:
listenerObject.eventName = function(参数){//定义侦听器对象事件函数
? ????// 此处是你的代码
};
broadcastObject.addListener(listenerObject);
其中listenerObject是指定侦听器对象的名称,broadCastObject是名称,e |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Flash视频教程:3.1 图层操作下一篇: Flash视频教程:3.11 制作按钮
关于Flash MX2004入门与进阶实例:6.3 事件和事件处理函数的所有评论