2005/07/15 | ActionScript 2 基础知识(1)
类别(Know) | 评论(0) | 阅读(450) | 发表于 10:01
一.按钮动情的"事件"
[学习目标]: 理解事件、动作、对象、函数的概念。真正的掌握按钮上的八大事件的具体对应的操作行为。
这两天比较忙,没有来的及写教程,回顾下教程六,我们就学了一个最基础的东西:"取名字"。官话讲"标识符"=名字了。现在我们知道把脚本放在谁那里了,那么脚本是怎么起作用的呢,也就是怎么去运行呢,运行你的脚本是需要触发才执行的,好比,你做好了各式各样的礼花,没有时机去引燃,你是看不到的。as需要的就是"事件"了,下面我们就看看按钮专注的"事件"。

在as里"软件或硬件发生的事情"就叫事件。假设我们用flash做个mp3播放器,其中必须有个"单击播放按钮开始唱某个歌曲"操作。在操作中,"单击"就是事件,这个"事件"触发了播放具体的某个歌曲这个"动作",其中,按钮,歌曲,都是我们控制的"对象",完成这个操作,在按钮上用了一个"函数"on()。
接二连三我们接触好多个概念,大家可能糊涂了,没有什么的,慢慢的理解。
①"事件":发生的事情。可以是系统内部的,可以是用户自己的。比如我写着教程,"没有烟抽了",就是个事件。
 ②"动作":动作是在播放 SWF 文件时指示 SWF 文件执行某些任务的语句。例如,gotoAndStop() 将播放头放置到特定的帧或标签。就是一条的语句不吧。比如我没有烟抽,"喊儿子上街去买包",就是动作了。
③"对象":就是你想操作东西。按钮就是个对象。不过它是抽象的。比如,"我"、"烟"、"儿子"都是对象。
④"实例":具体的对象。比如"人"是对象。"张三"就是"人"的一个实例。
⑤"函数":把一条的指令集合起来,完成一个特定的动作。比如on()函数。
有些概念在这里大家知道就可以,今后我们还会具体的讲。
从上面的知识可以看出,"事件"特别特别的重要,有"事件"发生才可以产生"动作",我们的脚本才没有白写。
在as中,我们知道三个地方加as,那当然在这个三个地方都会有事件产生。下面我们就看按钮上的"事件",他们是通过函数on完成的。
on(mouseEvent) {
// 此处是您的语句
}
这里的mouseEvent叫参数,就是前提条件,具体的就是我们下面的"八大事件":
1、press:一个简单的鼠标点击事件可以被分为两个过程:鼠标按下(press)和鼠标放开(release)。当鼠标移动到一个按纽的可点击区域里并点击该按纽时,Press事件发生,这适用于按纽作为开关的场合。
2、release:在鼠标指针经过按钮时释放鼠标按钮。
3、releaseOutside:当鼠标指针在按钮之内时按下按钮后,将鼠标指针移到按钮之外,此时释放鼠标按钮。
4、rollOver鼠标指针滑过按钮。
5、rollOut鼠标指针滑出按钮区域
6、dragOver在鼠标指针滑过按钮时按下鼠标按钮,然后滑出此按钮,再滑回此按钮。这是一个很有用的事件,可以用在很多场合,如游戏,以及购物车等。
7、dragOut在鼠标指针滑过按钮时按下鼠标按钮,然后滑出此按钮区域。
8、keyPress ("key") 按下键盘上指定的键。这个特殊呀,不是鼠标是键盘了:), 今后我们再介绍它。
二.常用函数
事件处理函数 事件 说明
onDragOut dragOut 当在按钮上按下鼠标按钮,然后将鼠标指针滑出按钮时调用。
onDragOver dragOver 当用户在按钮外部按下鼠标按钮,然后将鼠标指针拖动到按钮之上时调用。
onKeyUp keyPress结合键盘 当释放按键时调用
onKillFocus 结合键盘 当从按钮移除焦点时调用
onPress press 在鼠标指针位于按钮上方的情况下,按下鼠标按钮时调用
onRelease release 在鼠标指针位于按钮上方的情况下,释放鼠标按钮时调用。
onReleaseOutside releaseOutside 在鼠标指针位于按钮内部的情况下按下按钮,然后
将鼠标指针移到该按钮外部并释放鼠标按钮。
onRollOut rollOut 当鼠标指针滚动到按钮区域之外时调用
onRollOver rollOver 当鼠标指针滚过按钮时调用。
onSetFocus 结合键盘 当按钮具有输入焦点而且释放某按键时调用。
三.关于MC
影片剪辑就是MovieClip,我们一般简称MC,MC一般是用onClipEvent() 处理函数处理事件。它喜欢的事件可以有以下9种吧:
1、load:当前 MC 被装入并准备显示之前触发该事件。这个事件一般可以做一些初始化的工作,比如:变量的定义,赋值,加载as文件等等,很有用处的。
2、unload:当前 MC 被卸载准备消失之前触发该事件 。
3、enterFrame:当前 MC 每次计算帧上的内容时触发该事件。基本你可以这样理解,在时间轴上每播一个关键桢就触发这个事件,特别有用的,比如我们做些导航菜单。 一般在需要进行些循环的检测时你一定会想到这个事件的。
4、mouseMove:当鼠标移动时触发该事件。对比按纽的rollOver。
5、mouseDown:当鼠标左键按下时触发该事件 。对比按纽的press
6、mouseUp:当鼠标左键抬起时触发该事件 。对比按纽的release。
7、keyDown:当键盘按键被按下时触发该事件。
8、keyUp:当键盘按键被按下后松开时触发该事件 。对比keyPress。
9、data:当前 MC 接收到新数据时触发该事件。这个事件跟 loadVariables() 和loadMovie()两个函数结合的最紧密。
0

评论Comments

日志分类
首页[271]
Life[195]
Music[24]
Know[23]
Photo[17]
Service[7]
English[5]