Flash交互动画_第1页
Flash交互动画_第2页
Flash交互动画_第3页
Flash交互动画_第4页
Flash交互动画_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、交交 互互 动动 画画交交 互互 动动 画画交互动画概述交互动画概述 交互动画是指在动画播放时支持交互动画是指在动画播放时支持事件响应事件响应和和交互功能交互功能的一种动画,也就是说,动画播放时可以接受某种的一种动画,也就是说,动画播放时可以接受某种控制控制。这种控制可以是用户的某种操作,也可以是在动画制作这种控制可以是用户的某种操作,也可以是在动画制作时预先时预先设置的操作设置的操作。这种交互性提供了观众参与和控制。这种交互性提供了观众参与和控制动画播放的手段,使观众由被动接受变为主动选择。动画播放的手段,使观众由被动接受变为主动选择。 交互动画,是通过对交互动画,是通过对帧帧或或按钮按钮设

2、置一定动作来实现的。设置一定动作来实现的。所谓的所谓的“动作动作”指的是一套命令语句,当条件满足时就指的是一套命令语句,当条件满足时就会发出命令来执行特定的动作。而用来触发这些动作的会发出命令来执行特定的动作。而用来触发这些动作的“事件事件”,无非就是播放指针指到某一帧,或者用户单,无非就是播放指针指到某一帧,或者用户单击某个按钮或按某个键。当这些事件发生时,动画就会击某个按钮或按某个键。当这些事件发生时,动画就会执行事先已经设定好的动作。执行事先已经设定好的动作。u从一个逐页浏览器说起从一个逐页浏览器说起ActionScript 概述概述 交互动画都是通过交互动画都是通过 Flash 内置的

3、脚本语言内置的脚本语言 ActionScript 完成的完成的。下面主要介绍关于下面主要介绍关于AS 的一些基础知识和的一些基础知识和编编程程方法方法。 简单的说,添加脚本可分为两种:一是把简单的说,添加脚本可分为两种:一是把脚本编写在时间轴上面的脚本编写在时间轴上面的关键帧关键帧上(注意,上(注意,必须是关键帧)。二是把脚本编写在具体必须是关键帧)。二是把脚本编写在具体对对象象上,比如把直接写在上,比如把直接写在MCMC(影片剪辑元件的(影片剪辑元件的实例)上或者实例)上或者按钮按钮上。上。ActionScript的类型的类型1.1.在关键帧上添加在关键帧上添加 将将ASAS添加在特定的帧上

4、,当动画播放到该帧时,相应的添加在特定的帧上,当动画播放到该帧时,相应的ASAS程序就会被执行,典型的应用是控制动画的播放和结束。程序就会被执行,典型的应用是控制动画的播放和结束。2.2.在按钮上添加在按钮上添加 这这种添加方式更加常用,例如常见的有鼠标滑过按钮、按钮种添加方式更加常用,例如常见的有鼠标滑过按钮、按钮被按下或弹起等,这样很容易完成交互式动画的制作。并且多被按下或弹起等,这样很容易完成交互式动画的制作。并且多个个ASAS程序被添加在同一按钮时,各自具有独立的动作,不会相程序被添加在同一按钮时,各自具有独立的动作,不会相互影响。互影响。3.3.在电影剪辑中添加在电影剪辑中添加 使用

5、该方式所添加的使用该方式所添加的ASAS往往是在该电影片段被载入或是为了往往是在该电影片段被载入或是为了载入某些过程中获取相关信息才被执行的。这种方式在实际中载入某些过程中获取相关信息才被执行的。这种方式在实际中应用较少,但使用起来会简化很多制作工作。应用较少,但使用起来会简化很多制作工作。按钮的创建按钮的创建u单击单击“插入插入”“新建元件新建元件”菜单命令菜单命令,弹出,弹出“创建新元件创建新元件”对话框。在该对话框内,输入元件的名称(例如对话框。在该对话框内,输入元件的名称(例如“图像按图像按钮钮”),选择),选择“按钮按钮”类型。单击类型。单击“确定确定”按钮,切换到按按钮,切换到按钮

6、元件编辑状态,时间轴的钮元件编辑状态,时间轴的“图层图层1”1”图层中显示图层中显示4 4个连续的个连续的帧,如图所示。帧,如图所示。u 用户需要在这用户需要在这4 4个帧中分别创建相应的按钮外观个帧中分别创建相应的按钮外观,可以导入,可以导入图形、图像、文字、图形元件实例、影片剪辑元件实例(制作图形、图像、文字、图形元件实例、影片剪辑元件实例(制作动画按钮)和声音等,但不能在一个按钮中再使用按钮元件。动画按钮)和声音等,但不能在一个按钮中再使用按钮元件。最好将按钮图形精确定位,使图形的中心与十字标记对齐。按最好将按钮图形精确定位,使图形的中心与十字标记对齐。按钮的每一帧可以由多个图层组成。钮

7、的每一帧可以由多个图层组成。u测试按钮:测试按钮:测试按钮就是将鼠标指针移到按钮之上和单击按测试按钮就是将鼠标指针移到按钮之上和单击按钮,然后观察它的动作效果(应该像播放影片时一样按照指钮,然后观察它的动作效果(应该像播放影片时一样按照指定的方式响应鼠标事件定的方式响应鼠标事件) )。测试按钮以前要进行下述。测试按钮以前要进行下述4 4种操作种操作中的一种。中的一种。工具箱工具箱分门别类列出分门别类列出脚本语句元素脚本语句元素脚本导航器脚本导航器列出与脚本相关联的列出与脚本相关联的帧位置和对象。单击帧位置和对象。单击选项将显示相应脚本选项将显示相应脚本。脚本编辑窗口脚本编辑窗口编辑修改脚本代码

8、编辑修改脚本代码的区域。的区域。编辑工具栏编辑工具栏给出常用编辑工具,给出常用编辑工具,最常用的是最常用的是,可调,可调出语句、属性等。出语句、属性等。状态栏状态栏给出当前脚本所对给出当前脚本所对应的图层位置等。应的图层位置等。gotoAndPlay();“收/展”按钮快捷菜单认识动作面板认识动作面板u动作脚本是在动作脚本是在动作面板动作面板中编写的,中编写的,动作面板动作面板如下图所示:如下图所示:u程序(动作脚本)的编写:程序(动作脚本)的编写: 语句格式与语句格式与 C C 语言语言相仿,句尾需加分号相仿,句尾需加分号“;”;”结束。结束。 u 交互动画的播放交互动画的播放一旦添加了脚本

9、,一旦添加了脚本,其控制功能只在其控制功能只在“测试影片测试影片”方式下方可方式下方可表现,而在表现,而在“播放播放”方式下所表现的是无控播放,与不加控制脚方式下所表现的是无控播放,与不加控制脚本的情况完全一样。本的情况完全一样。u常用函数的意义常用函数的意义一、在一、在关键帧上编写:关键帧上编写:直接在直接在关键帧关键帧上写语句。上写语句。l格式:格式:语句;语句;如:如:stop; 到此关键帧中断播放到此关键帧中断播放脚本的编写格式脚本的编写格式l 说明:说明:语句必须写在关键帧上,否则无效。语句必须写在关键帧上,否则无效。动画用动画用 stop 暂停后,在暂停后,在 “影片测试影片测试”

10、 方式下,方式下,按按回车回车键将继续运行,但不明确,最好使用按钮,键将继续运行,但不明确,最好使用按钮,点击按钮使之继续运行。点击按钮使之继续运行。l 说明:说明: 控制按钮一般应放在被控动画上面的独立图层中。控制按钮一般应放在被控动画上面的独立图层中。 同一按钮在不同画段所编程序表现为同一按钮在不同画段所编程序表现为独立性独立性,互不影响,互不影响,相当于在不同画段内摆放了同一按钮的多个实例,但要在不相当于在不同画段内摆放了同一按钮的多个实例,但要在不同画段的开始处同画段的开始处添加关键帧添加关键帧,这类似于同一局部变量在不同,这类似于同一局部变量在不同的过程中相互独立的效果。的过程中相互

11、独立的效果。 对按钮添加脚本时需要先选中按钮层的对按钮添加脚本时需要先选中按钮层的非关键帧非关键帧处,并单处,并单击击选中按钮选中按钮,则所编程序就是面对该按钮的程序。,则所编程序就是面对该按钮的程序。切记万不切记万不可选在关键帧上,否则将视为面对关键帧编程。可选在关键帧上,否则将视为面对关键帧编程。二、对按钮二、对按钮编写编写AS:l如:如:on(release) gotoAndPlay(31); 点击按钮转到点击按钮转到31帧并播放帧并播放l格式:格式:on(事件事件)语句组语句组;法一:写在按钮上法一:写在按钮上u常见事件常见事件双击双击 事件说明:事件说明:(1) press(按按):

12、当鼠标移到按钮上,单击按下鼠标左键时触发此事件。当鼠标移到按钮上,单击按下鼠标左键时触发此事件。(2) release(释放释放):当鼠标移到按钮上,单击鼠标左键,并松开时触发此事件。当鼠标移到按钮上,单击鼠标左键,并松开时触发此事件。(3)(3)releaseOutside( (外部释放外部释放):):当鼠标移到按钮上,单击按下鼠标左键,并将鼠标移出按钮当鼠标移到按钮上,单击按下鼠标左键,并将鼠标移出按钮范围,再松开鼠标左键时触发此事件。范围,再松开鼠标左键时触发此事件。(4) rollOver(滑过滑过):当鼠标由按钮外面,移到按钮内部时触发事件。当鼠标由按钮外面,移到按钮内部时触发事件。

13、(5) rollOut( (滑离滑离):):当鼠标由按钮内部,移到按钮外边时触发此事件。当鼠标由按钮内部,移到按钮外边时触发此事件。(6) dragOver(拖过拖过):当鼠标掠过按钮时触发此事件。当鼠标掠过按钮时触发此事件。(7)dragOut(拖离拖离):当鼠标移到按钮上,并按下鼠标并把鼠标拖出按钮范围时触发此事件。当鼠标移到按钮上,并按下鼠标并把鼠标拖出按钮范围时触发此事件。(8)keyPress8)keyPress “” ( (按键按键):):当键盘的指定按键被按下时,触发此事件。当键盘的指定按键被按下时,触发此事件。l应用举例:应用举例: 打开网页:打开网页: 脚本程序:脚本程序:

14、on(release) getURL(http:/,_blank); 画册翻页:画册翻页:演示演示法二:写在时间轴上法二:写在时间轴上1.1.选中按钮,在下面的属性面板中为按钮起一个名字,这里选中按钮,在下面的属性面板中为按钮起一个名字,这里称作称作 botton1。2.2.选中时间轴按钮层的关键帧,按选中时间轴按钮层的关键帧,按 F9 打开动作面板进行编程。打开动作面板进行编程。如打开网页:如打开网页: botton1.onRelease = function() getURL(http:/www.hbu. cn,_blank); u需要明确需要明确,这种写法应在事件名称前面加一个,这种写法

15、应在事件名称前面加一个onon,比如,比如, 事件如果是事件如果是 Release的话,应该写成的话,应该写成 onRelease,否则将否则将 会报错。会报错。翻页动画分为两种:翻页动画分为两种:第一种第一种,直接在主场内逐次制作分页;,直接在主场内逐次制作分页;第二种第二种,间接制作,先将各分页制作成影片剪辑元件,再将元件放回主场。前间接制作,先将各分页制作成影片剪辑元件,再将元件放回主场。前者直接明了,但界面杂乱;后者界面整洁,但不够明了。者直接明了,但界面杂乱;后者界面整洁,但不够明了。为了使画面为了使画面更加丰富多彩,尽可能利用制作动画的各种手段和方法,比如,形状更加丰富多彩,尽可能

16、利用制作动画的各种手段和方法,比如,形状渐变、运动渐变、引导动画、遮罩动画等。渐变、运动渐变、引导动画、遮罩动画等。一、直接制作一、直接制作 . .先行分段制作动画页,在各画段末端关键祯写入暂停语句先行分段制作动画页,在各画段末端关键祯写入暂停语句stopstop。注意:新起画段时,要将上一画段延续下来的内容清除注意:新起画段时,要将上一画段延续下来的内容清除掉,以免重叠。掉,以免重叠。 . .在动画层之上添加按钮层,并对按钮统一命名如在动画层之上添加按钮层,并对按钮统一命名如 B1B1,并将,并将按钮层延续到所有画段尾端。按钮层延续到所有画段尾端。 . .对按钮层,在与动画层各画段起始祯对应

17、位置处插入关键祯,对按钮层,在与动画层各画段起始祯对应位置处插入关键祯,将按钮层与相应画面对应分段。将按钮层与相应画面对应分段。 . .注意最好不要对按钮层先分段再放按钮,注意最好不要对按钮层先分段再放按钮,以免使按钮不能公以免使按钮不能公用和统一命名。用和统一命名。l 翻页画册的制作要领翻页画册的制作要领l 翻页画册的制作要领翻页画册的制作要领二、间接制作二、间接制作 分页动画往往涉及不同的动画形式,这势必会增加动画层分页动画往往涉及不同的动画形式,这势必会增加动画层次,使舞台界面趋于杂乱,为此,最好将各画页先行制作成次,使舞台界面趋于杂乱,为此,最好将各画页先行制作成元件,然后再将其拖放到

18、舞台,用集成的原件实例构造分页元件,然后再将其拖放到舞台,用集成的原件实例构造分页动画,占据少量的关键帧,达到简化界面的目的,使舞台更动画,占据少量的关键帧,达到简化界面的目的,使舞台更加清晰整洁。加清晰整洁。. .制作影片剪辑元件:制作影片剪辑元件: “插入插入”新建元件新建元件” ”影片剪辑影片剪辑” ” 进入元件制作进入元件制作环境,为影片剪辑命名并制作动画。环境,为影片剪辑命名并制作动画。l 翻页画册的制作要领翻页画册的制作要领二、间接制作(二、间接制作(续续) . .在主场中摆放实例:在主场中摆放实例: 返回主场(场景),将所建元件摆放到位,则实例仅占一个返回主场(场景),将所建元件

19、摆放到位,则实例仅占一个关键祯位置关键祯位置。 . .在主场中控制元件实例暂停播放的方法:在主场中控制元件实例暂停播放的方法: 一般在实例上暂停即可,但对于无需循环播放的实例,除了一般在实例上暂停即可,但对于无需循环播放的实例,除了主场中进行暂停外,同时制作元件时也要有暂停,否则将会反主场中进行暂停外,同时制作元件时也要有暂停,否则将会反复播放。复播放。 . .主场中的暂停脚本的编写:主场中的暂停脚本的编写: 既可以写在另外加的关键祯上,也可以在实例的本祯上,只既可以写在另外加的关键祯上,也可以在实例的本祯上,只是翻页按钮的程序不同,对于前者既可以写在按钮上(要留出是翻页按钮的程序不同,对于前

20、者既可以写在按钮上(要留出非关键祯点),也可以写在时间轴(关键祯)上,而后者只能非关键祯点),也可以写在时间轴(关键祯)上,而后者只能写在时间轴(关键祯)上,因为没有非关键祯点。要注意二者写在时间轴(关键祯)上,因为没有非关键祯点。要注意二者的的编程格式不同编程格式不同。 三、制作技巧三、制作技巧 . .命令按钮上文字的修改与添加:命令按钮上文字的修改与添加:双击主场中按钮实例或双击按钮元件,进入元件编辑状双击主场中按钮实例或双击按钮元件,进入元件编辑状态,按下文字工具按钮态,按下文字工具按钮A,在按钮上进行文字书写或修改,在按钮上进行文字书写或修改,返回主场即可。但要注意,若元件被加锁,编辑

21、文本时返回主场即可。但要注意,若元件被加锁,编辑文本时要将其要将其开锁开锁。 . .按钮字体的着色:按钮字体的着色:借助选中文本的属性栏实现。借助选中文本的属性栏实现。l 翻页画册的制作要领翻页画册的制作要领三、制作技巧三、制作技巧(续续) .关闭动画脚本的编写:关闭动画脚本的编写: 格式:格式:on (release) fscommand(quit); 说明:说明:作用:作用:点击按钮关闭动画并退出。点击按钮关闭动画并退出。运行运行:必须在必须在独立运行(独立运行(运行可执行文件)时方可表现,运行可执行文件)时方可表现,“测试影片测试影片”方式下不可。方式下不可。 fscommand 指令位

22、置:指令位置:在在“全局函数全局函数”“浏览器浏览器 网网络络”目录下。目录下。编写方式:编写方式:一般一般“关闭关闭”脚本应在按钮层未分段时统一脚本应在按钮层未分段时统一编写或将按钮置于独立图层中单独编写,以便在各画段中编写或将按钮置于独立图层中单独编写,以便在各画段中都适用。都适用。l 翻页画册的制作要领翻页画册的制作要领三、制作技巧三、制作技巧(续续).命令按钮事件框架的构建:命令按钮事件框架的构建:用鼠标双击用鼠标双击“动作动作”面板面板 “全局函数全局函数” ” “ “影片剪辑影片剪辑控制控制”目录下的目录下的onon命令,将在程序编辑区自动构造程序结命令,将在程序编辑区自动构造程序

23、结构并列出事件列表以供选择。构并列出事件列表以供选择。l 翻页画册的制作要领翻页画册的制作要领也可借助动作面板也可借助动作面板“脚本助手脚本助手”直接添加直接添加语句语句构成程序框构成程序框架。架。三、制作技巧三、制作技巧(续续).将主场动画转换成元件:将主场动画转换成元件:按下按下鼠标左键选中包括关键祯动画片断鼠标左键选中包括关键祯动画片断复制选中区域复制选中区域 右击选中区域,在快捷菜单中右击选中区域,在快捷菜单中 “复制祯复制祯” 右击右击关键祯关键祯在快捷菜单中在快捷菜单中 “粘贴祯粘贴祯”l 翻页画册的制作要领翻页画册的制作要领按钮脚本程序的编写格式按钮脚本程序的编写格式u写在按钮上

24、写在按钮上on(release) gotoAndPlay(31); u写在时间轴写在时间轴B1.onRelease = function() gotoAndPlay(31); Press事件发生于鼠标在按钮上方,并按下鼠标。事件发生于鼠标在按钮上方,并按下鼠标。Release 发生在按钮上方按下鼠标并松开。也就是发生在按钮上方按下鼠标并松开。也就是“按一下按一下”鼠标。鼠标。Releaseoutside 发生于在按钮上方按下鼠标,接发生于在按钮上方按下鼠标,接着把光标移动到按钮之外,然后松开鼠标。着把光标移动到按钮之外,然后松开鼠标。Rollover当鼠标滑入按钮时。当鼠标滑入按钮时。Roll

25、out当鼠标滑出按钮时。当鼠标滑出按钮时。Dragover发生于按着鼠标不放,光标滑入按钮。发生于按着鼠标不放,光标滑入按钮。Dragout发生于按着鼠标不放,光标滑出按钮。发生于按着鼠标不放,光标滑出按钮。Keypress发生于用户按下特定的键盘按键时。发生于用户按下特定的键盘按键时。l按钮常见事件按钮常见事件三、对影片剪辑编写:三、对影片剪辑编写: 两种情况:两种情况:AS写在影片剪辑(写在影片剪辑(实例实例)上、写在时间轴()上、写在时间轴(关键帧关键帧)上。)上。l写在影片剪辑上写在影片剪辑上(点击实例)(点击实例) 格式:格式:onClipEvent(事件事件)语句组;语句组;例:例

26、:onClipEvent(keyUp)_root.P1.stop(); 停止本场景内名为停止本场景内名为P1实例的动作。实例的动作。_root 代表本场景。代表本场景。(功功能键不起作用,其他键可以能键不起作用,其他键可以)l应用举例:应用举例:小球移动动画小球移动动画 制作元件:制作元件:画一个圆作影片剪辑,将其拖放到舞台创建实例。画一个圆作影片剪辑,将其拖放到舞台创建实例。 编写脚本:单击编写脚本:单击选中该实例,按选中该实例,按 F9 F9 打开动作面板。打开动作面板。 选择选择 onClipEvent之后在显示的事件中选择之后在显示的事件中选择 EnterFrame,然,然后在里面编写

27、脚本:后在里面编写脚本:this._x+=5;脚本编写后应为:脚本编写后应为: onClipEvent (EnterFrame) this._x += 5; / / EnterFrame 的意思是以影片帧频不断地触发此动作。的意思是以影片帧频不断地触发此动作。 / /this 代表这个影片剪辑自身。代表这个影片剪辑自身。_x表示影片剪辑的表示影片剪辑的 x 轴坐标。轴坐标。l写在时间轴上写在时间轴上(点击关键帧)(点击关键帧)格式:格式:实例名实例名 . 事件名称事件名称=function()语句组;语句组; 说明:说明:需要注意的是,与按钮相仿,这种格式也需要需要注意的是,与按钮相仿,这种格

28、式也需要在事件名称前面加一个在事件名称前面加一个 on 。 - - load 影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。- - unload 在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处理与理与 Unload 影片剪辑事件关联的动作之前,不向受影响的帧附加任何影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作。动作。 - - enterFrame 以影片帧频不断地触发此动作。以影片帧频不断地触发此动作。- - mouseMove 每次移动鼠标时启动此动作。每次移

29、动鼠标时启动此动作。_xmouse 和和 _ymouse 属性属性用于确定当前鼠标位置。用于确定当前鼠标位置。- - mouseDown 当按下鼠标左键时启动此动作。当按下鼠标左键时启动此动作。- - mouseUp 当释放鼠标左键时启动此动作。当释放鼠标左键时启动此动作。- - keyDown 当按下某个键时启动此动作。使用当按下某个键时启动此动作。使用 Key.getCode 方法获取最方法获取最近按下的键的有关信息。近按下的键的有关信息。 - - keyUp 当释放某个键时启动此动作。使用当释放某个键时启动此动作。使用 Key.getCode 方法获取最方法获取最近按下的键的有关信息。近

30、按下的键的有关信息。 - - data 当在当在 loadVariables 或或 loadMovie 动作中接收数据时启动此动作。动作中接收数据时启动此动作。当与当与 loadVariables 动作一起指定时,动作一起指定时,data 事件只发生一次,即加载最后事件只发生一次,即加载最后一个变量时。当与一个变量时。当与 loadMovie 动作一起指定时,获取数据的每一部分时,动作一起指定时,获取数据的每一部分时,data 事件都重复发生。事件都重复发生。l影片剪辑常见事件影片剪辑常见事件l举例:举例:小球移动动画小球移动动画/该句可改为该句可改为mc._x+= mc._x + 5;l特别

31、提请注意:特别提请注意:事件字头该大写的一定要大写,否则不予执行。事件字头该大写的一定要大写,否则不予执行。如:如:onEnterFrame不能写作不能写作onenterframe 首先需要为影片剪辑实例起一个名字,比如首先需要为影片剪辑实例起一个名字,比如 mc mc ,再选中,再选中时间时间轴的第一帧轴的第一帧,打开动作面板,输入以下脚本:,打开动作面板,输入以下脚本: mc.onEnterFrame = function() this._x += 5; 法一:拖放法法一:拖放法 用鼠标将用鼠标将“动作动作”面板左边命令列表区内面板左边命令列表区内“全局函全局函数数”“影片剪辑控制影片剪辑

32、控制”目录下的目录下的onClipEvent命令拖命令拖放到程序编辑区内。放到程序编辑区内。l 命令按钮或影片剪辑事件程序框架的构建:命令按钮或影片剪辑事件程序框架的构建:法二:菜单法法二:菜单法 利用动作面板上的利用动作面板上的“脚本助手脚本助手”直接添加直接添加onClipEvent构成程序框架。构成程序框架。案例案例1 1 播放控制播放控制1.1.按按ctrl+F8ctrl+F8,新建立一个影片剪辑,并起名字为,新建立一个影片剪辑,并起名字为“动画动画”。做一个简单的影片剪辑。做一个简单的影片剪辑。2.2.回到舞台工作区,按回到舞台工作区,按F11F11打开库,将动画影片剪辑拖放到舞打开

33、库,将动画影片剪辑拖放到舞台中。并给这个实例起个名字叫台中。并给这个实例起个名字叫mcmc。 (按(按Ctrl + + 回车测试效果,动画将会不停地播放)回车测试效果,动画将会不停地播放)3.3.添加脚本,让该添加脚本,让该MCMC在影片一开始不要自动播放。选中时间在影片一开始不要自动播放。选中时间轴的第一帧,按轴的第一帧,按F9F9打开动作面板,选择专家模式,输入:打开动作面板,选择专家模式,输入:_root.mc.stop( ); (_root_root代表舞台,这个脚本的意思就是,代表舞台,这个脚本的意思就是,舞台上名字叫舞台上名字叫MCMC的实例停止播放。)的实例停止播放。)4.4.制

34、作几个按钮,分别表示播放、暂停、前进、后退、停止。并制作几个按钮,分别表示播放、暂停、前进、后退、停止。并摆放在舞台上。摆放在舞台上。5.5.现在要添加控制影片的脚本。这次把脚本直接写在舞台上这些现在要添加控制影片的脚本。这次把脚本直接写在舞台上这些按钮的身上。选中播放按钮,打开动作面板,输入:按钮的身上。选中播放按钮,打开动作面板,输入:on (release) _root.mc.play(); 如果要在按钮身上写脚本的话,必须使用:如果要在按钮身上写脚本的话,必须使用: on( (事件事件)/)/脚本程序脚本程序 的格式来写!的格式来写! 上面的脚本作用就是:当在该按钮上按一下鼠标,则触发

35、上面的脚本作用就是:当在该按钮上按一下鼠标,则触发 release事件事件,就会执行下面的,就会执行下面的 _ _root.mc.play(); 程序,意思是让程序,意思是让舞台上的舞台上的mc开始播放。开始播放。 6.6.同理:选中舞台上的暂停按钮,在它上面输入:同理:选中舞台上的暂停按钮,在它上面输入: on (release) _ root.mc.stop()然后依次在快退上输入:然后依次在快退上输入: on (release) _root.mc.prevFrame(); /prevFrame表示回到动画的上一帧。表示回到动画的上一帧。在快进的按钮上输入:在快进的按钮上输入: on (r

36、elease) _root.mc.nextFrame();在停止的按钮上输入:在停止的按钮上输入:on (release) _root.mc.gotoAndStop(1); 表示跳到表示跳到mc影片的第一帧,并停止播放!影片的第一帧,并停止播放!案例案例2 2打开网页打开网页 u ASAS脚本编写可以写在时间轴的关键帧上,也可以写在对象脚本编写可以写在时间轴的关键帧上,也可以写在对象本身上面。按钮也不例外,既可以写在时间轴上,也可以写本身上面。按钮也不例外,既可以写在时间轴上,也可以写在按钮本身上面。在按钮本身上面。u实现效果:做一个按钮,这个按钮要实现的功能就是打开一实现效果:做一个按钮,这

37、个按钮要实现的功能就是打开一个指定的网个指定的网页。 方法一方法一把把ASAS写在按钮上写在按钮上1.1.在舞台上绘制一个矩形,选中矩形并按在舞台上绘制一个矩形,选中矩形并按F8F8,将这个矩形转,将这个矩形转换成按钮元件。换成按钮元件。2.2.编写动作脚本:编写动作脚本:选中按钮,按选中按钮,按F9F9,打开动作面板,输入以下脚本:,打开动作面板,输入以下脚本:on(release) getURL(http:/,_blank) 则该按钮就实现了一个打开网页的功能。则该按钮就实现了一个打开网页的功能。按钮的按钮的ASAS编写规则编写规则 on on语句就是按钮的语句就是按钮的ASAS编写规则了

38、。需要注意的是编写规则了。需要注意的是onon里面的事件,这个里面的事件,这个事件你可以理解为是鼠标或键盘的动作。刚才的例子我们使用的事件是事件你可以理解为是鼠标或键盘的动作。刚才的例子我们使用的事件是releaserelease(按一下鼠标)现在把常用的按钮事件列出(按一下鼠标)现在把常用的按钮事件列出事件名字事件名字说明说明PressPress事件发生于鼠标在按钮上方,并按下鼠标事件发生于鼠标在按钮上方,并按下鼠标ReleaseRelease发生在按钮上方按下鼠标并松开。也就是发生在按钮上方按下鼠标并松开。也就是“按一下按一下”鼠标鼠标ReleaseoutsideReleaseoutsid

39、e发生于在按钮上方按下鼠标,接着把光标移动到按钮发生于在按钮上方按下鼠标,接着把光标移动到按钮之外,然后松开鼠标之外,然后松开鼠标RolloverRollover当鼠标滑入按钮时当鼠标滑入按钮时RolloutRollout当鼠标滑出按钮时当鼠标滑出按钮时DragoverDragover发生于按着鼠标不放,光标滑入按钮发生于按着鼠标不放,光标滑入按钮DragoutDragout发生于按着鼠标不放,光标滑出按钮发生于按着鼠标不放,光标滑出按钮KeypressKeypress发生于用户按下特定的键盘按键时发生于用户按下特定的键盘按键时方法二把方法二把ASAS写在时间轴上写在时间轴上1.1.选中按钮,

40、在下面的属性面板中为按钮起一个名选中按钮,在下面的属性面板中为按钮起一个名字,这里我起了一个字,这里我起了一个botton1; ;2.2.选中时间轴的第一帧,按选中时间轴的第一帧,按F9F9打开动作面板。输入打开动作面板。输入如下脚本:如下脚本: botton1.onRelease = function() getURL(http:/,_blank) ; 案例案例3 AS3 AS实现的动画实现的动画1 1、新建立一个电影剪辑元件,里面你就随便画一个圆吧。之后把这个新建立一个电影剪辑元件,里面你就随便画一个圆吧。之后把这个影片剪辑拖放到舞台之中(也就是创建一个此影片剪辑的实例)。影片剪辑拖放到舞

41、台之中(也就是创建一个此影片剪辑的实例)。2 2、 现在开始编写脚本,选中这个现在开始编写脚本,选中这个MCMC,按,按F9F9打开动作板,选择打开动作板,选择onClipEvent,之后在显示的事件中选择,之后在显示的事件中选择enterFrame,然后在里面编,然后在里面编写脚本如下:写脚本如下:this._x+=5 这个脚本编写之后应该是:这个脚本编写之后应该是: onClipEvent (enterFrame) ) / / enterFrame 的意思是以影片帧的意思是以影片帧频不断地触发此动作频不断地触发此动作 this._x += 5;this._x += 5; / /thisth

42、is代表这个影片剪辑自身。代表这个影片剪辑自身。_x_x表示影片表示影片剪辑的剪辑的X X轴坐标。每播放一帧,向右移动轴坐标。每播放一帧,向右移动5 5个像素个像素 影片剪辑的影片剪辑的ASAS编写格式编写格式 从这个例子不难看出,如果把从这个例子不难看出,如果把ASAS写在影片剪辑本身写在影片剪辑本身上,正确的上,正确的书写格式就是:书写格式就是: onClipEvent ( (事件事件) ) / /需要执行的脚本程序需要执行的脚本程序 这个可以看成是公式,你记住就行了,是写在影片这个可以看成是公式,你记住就行了,是写在影片剪辑身上的。括号里的剪辑身上的。括号里的“事件事件”其实是个触发器,

43、当其实是个触发器,当事件发生时,执行该事件后面花括号中的语句。事件发生时,执行该事件后面花括号中的语句。影片剪辑的影片剪辑的ASAS编写编写l- load- load 影片剪辑一旦被实例化并出现在时间轴中时,即启动影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。此动作。l- unload- unload 在从时间轴中删除影片剪辑之后,此动作在第一帧在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处理与中启动。处理与 Unload Unload 影片剪辑事件关联的动作之前,不向影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作。受影响的帧附加任何动作。 l- enterFrame-

44、 enterFrame 以影片帧频不断地触发此动作。以影片帧频不断地触发此动作。l- mouseMove- mouseMove 每次移动鼠标时启动此动作。每次移动鼠标时启动此动作。_xmouse_xmouse 和和 _ymouse_ymouse 属性用于确定当前鼠标位置。属性用于确定当前鼠标位置。l- mouseDown- mouseDown 当按下鼠标左键时启动此动作。当按下鼠标左键时启动此动作。l- mouseUp- mouseUp 当释放鼠标左键时启动此动作。当释放鼠标左键时启动此动作。 l- keyDown- keyDown 当按下某个键时启动此动作。使用当按下某个键时启动此动作。使用

45、 Key.getCodeKey.getCode 方法获取最近按下的键的有关信息。方法获取最近按下的键的有关信息。 l - keyUp- keyUp 当释放某个键时启动此动作。使用当释放某个键时启动此动作。使用 Key.getCodeKey.getCode 方方法获取最近按下的键的有关信息。法获取最近按下的键的有关信息。 l- data- data 当在当在 loadVariablesloadVariables 或或 loadMovieloadMovie 动作中接收数据动作中接收数据时启动此动作。当与时启动此动作。当与 loadVariables loadVariables 动作一起指定时,动作

46、一起指定时,datadata 事件只发生一次,即加载最后一个变量时。当与事件只发生一次,即加载最后一个变量时。当与 loadMovieloadMovie 动作一起指定时,获取数据的每一部分时,动作一起指定时,获取数据的每一部分时,datadata 事件都重复事件都重复发生。发生。在时间轴上添加语句n首先你把刚才的脚本去掉。然后需要为这个影片剪辑实例起一个名字mcn选中时间轴的第一桢,打开动作面板,输入以下脚本:nmc.onEnterFrame = function() nthis._x += 5; /也可以把这句为mc._x+=5 为什么?n;n显而易见,在时间轴上的写法就应该套用以下公式:n

47、 实例名.事件名称=function()n /脚本程序nn需要注意的是,这种写法的事件名称不要忘了在前面加一个on,比如,事件如果是EnterFrame的话,你就应该写成onEnterFrame案例:改变实例属性案例:改变实例属性n1.新建一个文件,导入一个电影剪辑符号。n2.新建按钮符号,命名为“上”,绘制向上的箭头,并且导入一段声音。n3.复制按钮,分别建立下,左,右,右转,左转,放大,缩小几个按钮。n4.将所有的按钮都拖动到舞台上,对齐。n5.单击“上”按钮,F9打开语句面板,添加下面语句:案例:改变实例属性案例:改变实例属性non (press) n_root.a._y=_root.a

48、._y-10;(_root.a._y-=10;)nn在“下”添加:_root.a._y=_root.a._y+10n“左”添加:_root.a._x=_root.a._x-10n“右”添加:_root.a._x=_root.a._x +10n“左旋转”添加: _root.a._rotation=_root.a._rotation-30n“右旋转”添加: _root.a._rotation=_root.a._rotation+30n“放大”添加:_root.a._xscale=_root.a._xscale+2;_root.a._yscale=_root.a._yscale+2n“缩小”添加:_

49、root.a._xscale=_root.a._xscale-2;_root.a._yscale=_root.a._yscale-2动态文本n为动态文本赋值n方法1 使用动态文本的实例名字来赋值n操作步骤:n (1)在舞台上创建一个动态文本框,并为这个动态文本实例起一个名字,例如test n (2)选中时间轴的第一桢,打开动作面板,输入以下脚本:n test.text = 为动态文本赋值n 按下ctrl+回车就可进行测试了。从这个简单的例子可以知道,如果要用文本实例名字来进行赋值的话,必须使用以下格式:动态文本实例的名字.text=”需要赋值的内容” 动态文本的赋值n方法2:使用变量来赋值n(

50、1)在舞台上创建一个动态文本框,并为这个动态文本实例起一个变量名test。n(2)选中时间轴的第一桢,打开动作面板,输入以下脚本:n test = 为动态文本赋值!n 不难看出,使用变量赋值更为简单实用!赋值格式为: 变量名=“赋值的内容”案例:取得坐标值n_xmouse,就是鼠标的水平位置。_ymouse,就是鼠标的垂直位置n1.Layer1命名为XY,在舞台上先产生两个一般文字 X:及Y:n2.产生两个动态文字,分别在属性面版的将变量命名为“xpos”以及“ypos”,并且隐藏文字边框及背景,并取消可以选取的功能,这样可以避免误导误以为该文字可以被选取或是输入,n3.Frame 1的Act

51、ion窗口键入以下程序代码,nxpos=_xmouse;/xpos显示的坐标nypos=_ymouse; /yos显示y坐标n4.延长到第帧,这样的作用主要是要形成循环,反复执行Frame1的程序代码,让画面的动态文字的值,随时保持更新。属性。案例:取得坐标值n5.在舞台上画一条长度超过画面的垂直线,再将该线条转为Movie Clip并给实例命名为Vlinen6.在舞台上画一条长度超过画面的水平线,再将该线条转为Movie Clip并给实例命名为Hline n7.Frame1再增加以下Actionn_root.vline._x=_xmouse;/vline的坐标为当前鼠标的x坐标;n_root

52、.hline._y=_ymouse; / hline的坐标为当前鼠标的y坐标; 绘图及颜色的绘图及颜色的AS编写编写n绘图命令讲解n在使用flash的过程中,难免会进行绘图的操作。除了用工具面板上的工具绘制图形之外,我们也可以使用ActionScript来绘制图形。nlineStyle(粗细,颜色,透明度)/设置绘制图形的线条粗细、颜色和透明度nMoveto(坐标,坐标)/设置绘图线条的起点坐标nlineto(坐标,坐标)/设置线条的结束坐标案例:使用语言绘制矩形n、新建一个flash文件。n、要绘制一个*大小的矩形,先确定矩形个顶点的坐标。(50,50) (350,50) (350,150)

53、 (50,150)n、选中时间轴的第1桢,打开动作面板。现在已经确定了矩形的个顶点,那么我们就可以来编写脚本命令了,请输入以下脚本:n_root.lineStyle(1, 0 x000000, 100);/设置线条的粗细,颜色和透明度n_root.moveTo(50, 50);/设置开始点的坐标。n_root.lineTo(350, 50);n_root.lineTo(350, 150);n_root.lineTo(50, 150);n_root.lineTo(50, 50); /设置结束点坐标,整个矩形绘制完毕案例:心连心n、新建立一个flash文檔,在舞台上绘制一个心,选中它并按转换成影片

54、剪辑,起名为:心。n、打开库面板,将影片剪辑“心”在舞台上再拖放一个实例,使舞台上存在两个心的实例。n、现在为舞台上两个实例分别起名字为a和b n、选中时间轴第一桢,打开动作面板,输入以下脚本:案例:心连心nfunction draw() /自己定义一个函数,这个函数起名为draw(可自定),函数的功能是要实现以a实例的坐标为起点,向b实例绘制线条。n_root.clear();/清除舞台上绘制的线条。n_root.lineStyle(1, 0 x000000, 90);/设置线条的粗细,颜色和透明度。n_root.moveTo(a._x, a._y);/以a实例的坐标为起点开始绘制线条。n_root.lineTo(b._x, b._y);/以b实例的坐标为绘制线条的结束点。nndraw();/执行函数draw,它将会在a与b之间绘制出一条黑色的线条。n案例:心连心n、现在创建拖动效果,选中舞台上的b实例,打开动作面板,输入以下脚本:non (press) /点击此实例,开始拖动nthis.startDrag(true);nnon (release) /释放鼠标,停止拖动nthis.stopDrag();nnonClipEvent (mouseMove) /当鼠标移动,也就是这个b实例移动的时候,就执行里面的程序。n_root.draw();/执行舞台上定义过的draw(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论