打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【转载】Flash动作编程学习笔记

第四章:事件-学习笔记 
1、事件的概念
视频59
事件是SWF文件播放时发生的动作。事件分两类:
鼠标单击按键之类的称用户事件,因为它是由用户直接交互操作发生的。
Flash Player自动生成的称系统事件,因为它不是由用户操作发生的。
为使应用程序能够对事件做出反应,必须使用事件处理函数。事件处理函数是与
特定对象和事件关联的ActionScript代码。
例1,单击按钮后,显示一段话。
①新建文档→从公用库拖入1个按钮→右击按钮/动作→脚本助手→
  全局函数/其它函数→双击trace→输入消息:“欢迎大家!”。代码是:
on (release) {
 trace("欢迎大家!");
}
这里是代码写在按钮上的情形


②选择代码的第1行→还可选择事件的其它动作(如下)→ctrl+回车(测试)。
 
鼠标在按钮上事件的动作
press            

release        
释放
releaseOutside 
外部释放
rollOver       
按键
rollOut        
滑过
dragOver      
滑离
dragOut       拖过
keyPress    
拖离
2、事件的处理方式
视频60
用as处理事件的方式有三类:
(1)使用事件处理函数方法。如,
anniu_btn.onRelease=function() { 
}
(2)使用事件侦听器。
(3)使用按钮和影片剪辑事件处理函数。
例2,自动显示一段话
①新建文档→用矩形工具绘制矩形→转换为元件1/影片剪辑→右击矩形→选择“动作”;
②脚本助手→全局函数/其它函数→双击trace→输入消息:“欢迎大家!”。代码是:
onClipEvent (load) {
 trace("欢迎大家!");
}
这里是代码写在影片剪辑上的情形
  
影片剪辑事件的动作
load            
 加载
enterFrame  
进入帧
unload         
卸载
mouseDown 
鼠标向下
mouseUp    
鼠标向上
mouseMove 
鼠标移动
keyDown      
向下键
keyUp          
向上键
data            
数据
3、使用事件处理函数方法
视频61
事件处理函数由三个部分组成:
事件所应用的对象、对象的事件处理函数方法的名称、分配给事件处理函数的函数。
事件处理函数基本结构:
对象.对象的事件=function() { 
   //此处是你的代码,对事件作出的反应
}
例3,事件处理函数方法
①新建文档→从公用库中拖入一按钮→用矩形工具绘制矩形→转换为元件1/影片剪辑
   →分别输入实例名称:an_btn、fk_mc;
  
②新建代码层→右击第1帧/动作→输入:
an_btn.onPress=function() { 
   trace("我爱金鹰教程");
}
fk_mc.onRelease=function() { 
   trace("希望金鹰教程能给大家带来轻松的学习方法");
}
 
③ctrl+回车→按按钮、单击影片剪辑→得到下面输出结果。
 

4、通过动作工具箱添加命令视频62
(1)在按钮上添加命令onPress
①在代码层第1帧输入:an_btn.→其后插入光标;
②在工具箱中选择:ActionScript 2.0类/影片/Button/事件处理函数→双击onPress
 
③在第2行输入:trace("金鹰教程将陆续推出更多的教程")→自动套用格式;
(2)在影片剪辑上添加命令onEnterFrame
①在代码层第1帧输入:fk_mc.→其后插入光标;
②在工具箱中选择:ActionScript 2.0类/影片/MovieClip/事件处理函数→双击onEnterFrame
③在第2行输入:trace("金鹰教程将陆续推出更多的教程")→自动套用格式;
 
5、使用事件侦听器视频63
事件侦听器让一个对象(称作侦听器对象),接收由其它对象(称作广播器对象)生成的事件。
例如舞台上的现有对象、影片剪辑或按钮实例,或可以是任何ActionScript类的实例。
事件侦听代码基本格式:
//建立侦听对象
var 侦听对象名:Object=new Object();
//侦听对象属性
侦听对象名.现有对象的属性=function(eventObj:Object) { 
   //此处是你的代码
};
//返回侦听情况
现有对象.addListener(侦听对象名);
6、侦听实例-变动文本框
视频64视频65
①新建文档→将图层1改为文本层→文本工具→属性/选择“输入文本”→在舞台上绘制
   文本框→再复制一个文本框→分别输入文本→实例名称分别是:wb1_txt、wb2_txt;
 
②新建代码层→右击第1帧/动作→输入:
var zt:Object=new Object();
③另起一行输入:zt.→其后插入光标→在工具箱中选择:
ActionScript 2.0类/影片/Selection/侦听器→双击onSetFocus→得到:
zt.onSetFocus = function(oldFocus, newFocus) { 
}
④将 oldFocus, newFocus 改为:wb1_txt, wb2_txt
同时输入:
wb1_txt.border=true;
wb2_txt.border=flash;
又得到:
var zt:Object=new Object();
zt.onSetFocus = function(wb1_txt, wb2_txt) {
        wb1_txt.border=true;
        wb2_txt.border=flash;
}
⑤在工具箱中选择:
ActionScript 2.0类/影片/Selection/方法→双击addListener→得到:
Selection.addListener(zt);
⑥修改整理全部代码:
//建立侦听对象
var zt:Object=new Object();
//侦听两个文本框焦点
zt.onSetFocus = function(wb1_txt, wb2_txt) {
        wb1_txt.border=false;
        wb2_txt.border=true;
}
//返回侦听情况
Selection.addListener(zt);
 
⑦ctrl+回车→单击显示文本框。
   点击查看效果 
7、侦听实例-鼠标移动的位置
视频66
①新建文档→将图层1改为文本层→文本工具→属性/选择“动态文本”→绘制文本框→实例名称:xs_txt;
 
②新建代码层→右击第1帧/动作→输入:
var zc:Object=new Object();
③另起一行输入:zc.→其后插入光标→在工具箱中选择:
ActionScript 2.0类/影片/Mouse/侦听器→双击onMouseMove→得到:
zc.onMouseMove = function() {
}
④输入:
xs_txt.text="X轴坐标:"+_root._xmouse+";Y轴坐标:"+_root._ymouse;
⑤另起一行→在工具箱中选择:
ActionScript 2.0类/影片/Mouse/方法→双击addListener→又得到:
Mouse.addListener(zc);
全部代码:
var zc:Object = new Object();
zc.onMouseMove = function() {
 xs_txt.text = "X轴坐标:"+_root._xmouse+";Y轴坐标:"+_root._ymouse;
};
Mouse.addListener(zc);
 
⑥ctrl+回车→移动鼠标,显示的数值变动。

8、按钮的事件处理函数
视频67
(1)专家模式
①新建文档→拖入按钮→右击按钮→选择“动作”;
②手工输入代码:
on (press) {
 trace("大家好!");
}
(2)脚本助手(参考例1)
①新建文档→拖入按钮→右击按钮→选择“动作”;
②脚本助手→在工具箱中选择:全局函数/其它函数→双击trace→输入消息:大家好!
③选择代码的第1行→还可选择事件的其它动作(如下)→ctrl+回车。
(3)注意事项
按钮的事件处理函数,是将代码写在按钮上,应注意:
①检验按钮是否被选中,查看动作面板中是否有“按钮”二字。
 
②使用按钮的事件处理函数,可不需要输入按钮的实例名称。
9、影片剪辑的事件处理函数
视频68
   请参考上面例2,类同“按钮的事件处理函数”。
10、按键的事件处理函数
视频69视频70视频71
①新建文档→文本工具→属性/选择“动态文本”→绘制文本框→实例名称:xs_txt;

②新建代码层→右击第1帧/动作→输入:
var zt:Object = new Object();
③换行→输入:zt.→其后插入光标→在工具箱中选择:
ActionScript 2.0类/影片/Key/侦听器→双击onKeyDown→得到:
zt.onKeyDown = function() { 
}
④输入:switch (→在工具箱中选择:
ActionScript 2.0类/影片/Key/方法→双击getAscii→得到:
switch (Key.getAscii()) {
 }
//trace(Key.getAscii());
⑤输入:
 case 49:
  xs_txt.text= "你按了1";
  break;
 case 50:
  xs_txt.text= "你按了2";
  break;
 case 51:
  xs_txt.text= "你按了3";
  break;
⑥换行→在工具箱中选择:
ActionScript 2.0类/影片/Key/方法→双击addListener→得到:
Key.addListener(zt)
全部代码如下:

⑦ctrl+回车→在键盘上按下按键1、2、3测试。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Flash MX 2004 ActionScript图文教程(十四)
Flash MX2004入门与进阶实例
懒惰文摘 | Main / 事件驱动编程
【Flash高级编程】属性控制学习笔记
unityGUI按钮事件
Chrome扩展开发指南(9)——Events(事件)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服