第六章 flash课件制作.docx
- 文档编号:10635943
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:28
- 大小:513.84KB
第六章 flash课件制作.docx
《第六章 flash课件制作.docx》由会员分享,可在线阅读,更多相关《第六章 flash课件制作.docx(28页珍藏版)》请在冰豆网上搜索。
第六章flash课件制作
6FLASH课件制作
Flash课件是非常受广大师生喜爱的课件形式,以其文件小,色彩艳丽,动画效果好,使用方便而著称,近年来发展很快。
本章介绍Flash课件的动作脚本、Flash课件的声音与视频运用以及Flash课件的技术结构。
6.1Flash课件概述
Flash是美国Macromedia公司所设计的一种二维矢量动画创作软件,也是功能很强的课件创作软件,功能强大,通用性好。
目前较新的版本是AdobeFlashCS5.5,最新的AS3.0编程语言替换了原来的AS2.0编程语言。
Flash软件自身携带了很多模板,如范例模板下,就有菜单范例、切换按钮范例和SWF的预加载器等14种模板,应用非常方便,特别是SWF的预加载器模板,共有三层,分别是“背景”“内容”“动作”,“背景”各帧公用,每帧为一个内容画面,这种技术结构,比较接近课件制作的要求,启发人们探索Flash课件的基本技术结构。
Flash本身的层、帧结构非常明晰,再加上Flash中影片剪辑的包容性,代码片段的易用性,元件及组件的可重复使用性,动画与代码之间的可转换性以及可保存为“FlashCS5.5未压缩文档(*.xfl)”格式进行后台查看等等,使这种动画制作软件具备了制作高品质课件的工程属性。
制作Flash课件,要掌握必要的动作脚本,还必须掌握Flash课件的技术结构。
6.2Flash动作脚本
在Flash中,课件或动画的交互功能,是通过动作脚本来实现的。
ActionScript是Flash的脚本解释语言,简称AS。
1.动作脚本初步
AdobeFlashCS5中提供了ActionScript3.0(缩写为AS3.0)和ActionScript2.0(缩写为AS2.0)两种脚本语言。
这是两种区别较大的编程语言,随着编程技术的专业化,AS3.0将替代AS2.0。
本书用AS3.0进行编程,在新建Flash文档时,选“新建文档”对话框中的第一项“Flash文件(ActionScript3.0)”。
ActionScript是一种面向对象的编程语言。
相对于其它的编程语言,ActionScript要容易一些。
(1)动作面板
图6-2-1为动作面板。
主要包括AS版本过滤器、动作工具箱、脚本导航器、脚本编辑窗口和工具栏等。
AS版本过滤器位于面板左上方,用以选择AS版本;动作工具箱位于面板左侧,用来浏览ActionScript元素的分类列表;脚本导航器位于面板左下方,显示正在工作的对象以及在哪些帧上添加了脚本,可以在各个脚本之间切换。
脚本编辑窗口位于面板的右侧,在这里编辑ActionScript脚本。
工具栏在脚本编辑窗口上方,主要由“将新项目添加到脚本中”“查找”“插入目标路径”“语法检查”“自动套用格式”“显示代码提示”“调试选项”“折叠成对大括号”“折叠所选”“展开全部”“应用块注释”“应用行注释”“删除注释”“显示/隐藏工具箱”“代码片段”“脚本助手”和“帮助”等工具组成。
图6-2-1动作面板
(2)AS版本过滤
在Flash中,对不同的应用程序环境,可以使用的语句是不同的,一般情况下,可以使用内置类,并通过版本过滤器使AS版本在ActionScript3.0、ActionScript2.0之间切换,如果为手机编写Flash程序,可将AS版本滤器设置为FlashLite1.0ActionScript,过滤掉不需要的内容。
类是对象的抽象表示,用以定义新的对象类型,如影片剪辑类、声音类、数组类等,而实例是属于某个类的对象。
Flash中的元件本质上也是一个“类”。
类表达的是一般关系,而类的实例则表达的是特殊关系。
类包含变量与函数两个因素,创建实例后,变量会成为实例的“属性”,而函数将成为实例的“方法”。
影片剪辑类、声音类等在安装Flash的时候,就已经存在于Flash之中,因而称做“内置类”。
(3)按钮事件侦听器
Flash中的事件是ActionScripit能够识别并可响应的事情。
SWF文件中的任何交互都可视为事件,如鼠标单击,键盘输入等。
事件侦听器也称为事件处理函数,是FlashPlayer为响应特定事件而执行的函数。
用按钮控制动画或课件的运行,就要用到按钮事件侦听器。
例用按钮控制动画的播放与停止。
打开一个flash文件,先在舞台上建立两个按钮元件的实例,并分别命名为“play_btn”和“stop_btn”,后缀“_btn”可作为按钮的标识。
对于播放按钮,可写出如下动作脚本:
play_btn.addEventListener(MouseEvent.CLICK,work1);
functionwork1(event:
MouseEvent){
play();
}
该动作脚本共四行。
第一行为播放按钮“play_btn”添加事件侦听器,小括号指明侦听器的触发事件是“MouseEvent.CLICK”,即鼠标的单击,响应事件为“work1”,这个响应函数的名称可以由我们来确定。
第三行到第五行定义函数“work1”,第二行定义函数头,在“work1”后面的括号中,指明该函数和鼠标事件相对应,而且要命名为“event”。
大括号内为函数体,第三行是要执行的动作“播放”。
其语句格式为“play()”,play后面的小括号内没有参数。
与之类似,没有参数的还有stop()语句。
第一行和第三行末尾的分号表示一个语句的结束。
在play_btn后面键入“.”,动作脚本窗口会自动打开一个列表,供使用者选择内容,如addEventListener、alpha、……,可省去具体的键入。
但是,如果没有用_btn作后缀,就没有这个触发打开列表的功能了。
类似的,还有“MovieClip”的后缀为_mc,“TextField”的后缀为_txt,“Video”的后缀为_video,“ObjectSound”的后缀为_sound等等。
事件侦听器相当于部队的哨兵,其任务是观察敌情,即“侦听”,如有敌人出现,哨兵会发出警报。
这里“敌人出现”即“触发事件”,而“发出警报”则是侦听器的“响应事件”。
同理,停止按钮“stop_btn”的动作脚本为:
stop_btn.addEventListener(MouseEvent.CLICK,work2);
functionwork2(event:
MouseEvent){
stop();
}
而返回第一帧并停止按钮“第一帧停_btn”的动作脚本为:
第一帧停_btn.addEventListener(MouseEvent.CLICK,work3);
functionwork3(event:
MouseEvent){
gotoAndStop
(1);
}
在多场景课件中,返回名为“封面”的场景第一帧并停止的按钮“封面_btn”的动作脚本为:
封面_btn.addEventListener(MouseEvent.CLICK,work4);
functionwork4(event:
MouseEvent){
gotoAndStop(1,"封面");
}
这里,括号(1,"封面")表示名为“封面”的场景第一帧,先写帧号,后面的场景名用英文双引号引起来,两者之间用英文逗号相隔。
(4)代码片段
在FlashCS5中的窗口菜单中,可打开一个“代码片段”面板,该面板也可从动作面板右上角的“代码片段”按钮中弹出。
“代码片断”面板使非编程人员能快速地轻松开始使用ActionScript3.0。
通过学习片段中的代码并遵循片段说明,还可以进一步了解代码结构和词汇。
利用“代码片断”面板,可以添加能影响对象在舞台上行为的代码,可以添加能在时间轴中控制播放的代码,还可以将自己创建的新代码片断添加到面板。
代码片段面板如图6-2-2。
该面板左侧有“添加到当前帧”和“复制到剪切板”两个按钮,右侧的按钮是一个“选项”下拉菜单。
下面的窗口中,是系统提供的代码片段文件夹分别是“动作”“时间轴导航”“动画”“加载和卸载”“音频和视频”和“事件处理函数”,其中打开的时间轴导航文件夹中包含了“在此帧处停止”等八个时间轴导航代码片段。
图6-2-2代码片段面板
将代码片断添加到对象或时间轴帧的方法是:
①选择舞台上的对象或时间轴中的帧;如果选择的对象不是元件实例或TLF文本对象,则当应用该代码片段时,Flash会将该对象转换为影片剪辑元件,如果所选择的对象还没有实例名称,Flash在应用代码片断时添加一个实例名称。
②根据需要,选择舞台上的对象或帧,在“代码片断”面板中,双击要应用的代码片断,Flash将代码片断添加到帧。
③在“动作”面板中,查看新添加的代码并根据代码片断的说明替换任何必要的项。
(5)链接网页
在课件的使用过程中,有时候需要让课件访问网页的URL(UniformResourceLocator),即让课件链接到网页。
让课件访问网页的URL有两种方法,第一种是用文本链接URL,在前面文本编辑部分已介绍过了,这里用动作脚本链接URL。
在Flash中,还可以用动作脚本链接URL。
“navigateToURL()”函数将来自特定URL的文档加载到窗口中。
我们先在舞台上设置一个按钮,实例名称为“my_btn”,点击该按钮,希望打开一个网页如“网易”的首页,可在时间轴中添加如下代码:
my_btn.addEventListener(MouseEvent.CLICK,work);
functionwork(event:
MouseEvent){
navigateToURL(newURLRequest(〞〞),〞_blank〞);
}
其中参数“_blank”是在新窗口打开网页。
这里要注意,函数“navigateToURL”的第一个参数必须是URLnavigate对象,所以要用“new”语句来创建对象。
而下面的语句是错误的。
navigateToURL(〞〞,〞_blank〞);
(6)编译器错误面板与输出面板
在测试代码时,要提及“编译器错误”面板和“输出”面板。
这两个面板打开后,与时间轴面板在同一个面板组,编译器错误面板用于显示ActionScript代码出现错误时的编译器警告。
编译器报告错误时,双击面板中的错误提示内容可以定位到动作面板中导致错误的代码行。
编写脚本时,有时需要获得表达式和变量的值,可以用“trace”语句,测试时,这些值会发送到输出面板。
2.AS3.0的简单编程
为了较好地完成动作脚本的编写,还需要学习一些简单的编程知识。
(1)变量
变量就是存放信息的容器,容器的名称不变,但其中的内容可以变。
如变量x,其值可以是0,1,2,3,…,等。
与变量相对应的是常量。
①创建变量与变量类型
变量由变量名和变量值组成,变量名用来区分各个不同的变量。
用语句“var”可以创建变量,格式如下:
varvariableName[:
type][=value]
这里,“variableName”是变量名称。
“type”是变量类型,说明该变量是数字、字符串还是布尔型。
定义了变量类型后,程序会对数据的赋值过程进行检查。
如果没有定义变量类型,虽然可以放置数字的值,也可以放置字符串的值,但对于较大的程序或多人合作开发的程序而言,则可能出现很多问题。
在Flash的各种变量中,最常用的变量有三种类型,分别是数字型、字符串型和布尔型。
数字型。
用于进行数字运算,有无穷多个取值。
例如:
0,56,-76,3.14等。
字符串型。
是用半角双引号引起来的字符序列,也有无穷多个取值。
例如:
〞abc〞、〞3456〞、〞A1B2C3〞、〞毛主席在延安〞、〞!
@#%&*()56〞等等。
布尔型。
只有两种取值,“true”和“false”。
用于逻辑结果正误的判断,若某句话正确,结果用true表示;否则结果用false表示。
另外,还有对象型变量、电影片段型变量和未定义型变量。
“value”赋给该变量的值。
用语句“delete”可以删除由“variableNam”创建的变量,格式如下:
deletevariableName
②变量命名规则
在为变量命名时,必须遵守下面的一些规则:
a.变量名只能包含字母、数字、下划线和美元符号$,不能有空格和特殊符号;变量名通常以小写字母开头,不能以数字开头。
b.变量名必须是唯一的。
在保持意义明确的同时尽可能地保持变量名简短。
c.变量名不能是逻辑变量和关键字,例如True、False都是逻辑编辑,if、for等都是关键字,不能用作变量名称。
d.使用变量前要先定义再使用。
③表达式与运算符
表达式是用于为变量赋值的语句,在Flash中有数值表达式、字符串表达式和逻辑表达式等。
表达式是用运算符号将变量或常量连接起来的结果。
如:
m=0;
1+3;
a*b+c;
i++;
T>S;
语法标点
ActionScript脚本语言和其他语言一样,也有一定的语法规则。
在编写ActionScript脚本时,一定要遵守这些语法规则,其中常用的语法有点、大括号、圆括号、分号、关键字、字母大小写和注释等。
分号“;”,分号运算符表示完整语句的结束。
逗号“,”,逗号运算符表示内容的顺序处理,主要用于两种情况。
一种是在创建变量的时候,若一次要创建多个变量,可以用逗号。
例如一次定义单个变量x、y和b:
varx:
Number,y:
String,b:
Boolean;
另一种情况是在函数中,用于分隔要次序读取的内容,如跳转到场景“封面”的第一帧并暂停:
gotoAndStop(1,"封面");
注释符号“/**/”和“//”,前一种用于指示一行或多行脚本注释,后一种是将分隔符到行末之间的内容标志为注释。
注释语句以灰色来显示,被ActionScript解释程序解释为注释并忽略。
双引号“"”,双引号的作用是标识字符串,必须成对出现。
通过下面的两个语句来看双引号的作用。
varS1="技术+艺术";
trace(S1);
varS2="技术"+"艺术";
trace(S2);
测试影片,输出结果分别为“技术+艺术”和“技术艺术”,因为S1的值是"技术+艺术I",加号是包含在双引号内部的,故输出时原封不动;S2的值是"技术艺术",因加号是在两对双引号之间,故输出时当作运算符处理了。
点号“.”,点号的作用是关联的引用。
可以是下级对象,也可以是本对象的方法、属性、事件等。
Flash中的脚本语言,要区别大小写。
如跳转语句gotoAndPlay(),不能写成gotoAndplay(),否则执行会出错。
(2)函数
计算机中的“函数”,是一段可以重复使用的ActionScript代码。
我们把主板、显卡、声卡、网卡等相关器件组装到一个箱子里面,该箱子可当作整体的工作单位进行储藏、搬运、操作,这个箱子就叫做计算机的“主机”。
如果把许多相关的代码放到一个“箱子”里面,再把这个箱子当做整体的工作单位来进行调用,这个箱子就叫做“函数”。
设置了输入、输出、执行目的后,可以不用了解函数内部的运行机制而直接使用。
函数的创建用“function”语句来完成,一般格式如下:
function函数名(参数:
参数类型):
返回数据类型{
函数体
}
创建函数时,应注意下列几个关键点:
a.function关键字告诉Flash正在声明一个函数。
b.函数名应当遵守变量的命名法则。
c.所有函数的定义都必须在函数名后面包括一对圆括号,在圆括号中是要传递给函数的参数,可以没有参数,但不能没有圆括号。
d.圆括号后面是冒号和一个有效的数据类型名。
数据类型是函数将返回的数据的类型。
e.函数体是说明该函数要做什么的ActionScript语句,由一对大括号定义。
在编写代码过程中可以发现,类名的首字符应该大写,如影片剪辑类“MovieClip”。
属性、方法以及对象的首字母应小写,如“stopAll”。
对于标识符,其中所包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。
3.文本数据
文本数据是用文本类型来表现的数据。
(1)文本面板
文本引擎中的两个选项分别为TLF文本(文本布局框架)与传统文本,如图6-2-3。
TLF文本支持更多丰富的文本布局功能和对文本属性的精细控制,其文本类型有只读、可选和可编辑三种。
传统文本的文本类型又分为静态文本、输入文本和动态文本三种。
建立文本对象后,系统默认创建的文本是TLF文本。
课件运行过程中,可能需要使用者输入一些字符串和数据,用TLF文本时,在文本类型中选“可编辑”,用传统文本时,在文本类型中选“输入文本”。
而输出数据(如计算结果),在用TLF文本时,在文本类型中选“只读”,在传统文本中选“动态文本”。
要控制文本,一般应对文本的实例命名,选中文本,在属性面板中填写实例名称,名称中的后缀可用“_txt”标识。
图6-2-3TLF文本和传统文本的属性面板
例利用动作脚本,在舞台上显示红色字体的“新中国”字样。
先在舞台上建立TLF文本实例,命名为“my_txt”,文本类型为“只读”。
在动作面板中输入如下代码:
my_txt.text="新中国";
my_txt.textColor=0xFF0000;//0xFF0000即红色,其中0x表示16进制
测试影片,可显示红色的“新中国”字样。
这里的点号“.”的作用是引用对象内容,可以理解为“的”。
“my_txt.text”表示“my_txt”的“text”,即它的文本内容。
而“my_txt.textColor”表示“my_txt”的“textColor”,即文本颜色。
(2)体积的计算
计算内容在中小学课件中是常见的,如周长的计算、面积的计算和体积的计算。
这里通过计算圆柱体的体积,结合“只读”文本“可编辑”文本的使用来掌握课件中简单的数据处理方法。
例圆柱体的体积的计算。
选用TLF文本。
使用文本工具添加三个只读文本,分别键入“输入半径”“输入高度”“圆柱体积”字样。
使用“文本”工具创建二个“可编辑”文本,在属性面板中分别将实例名称设置为“r_txt”和“h_txt”,并在“容器和流”选项设置填充色,这两个文本用来输入数据。
再使用“文本”工具创建一个“只读”文本,在属性面板中将实例名称设置为“v_txt”,并在“容器和流”选项设置填充色,用来显示计算的结果。
FlashCS5中的可编辑或只读文本,注意在在属性面板中消除锯齿栏选“使用设备字体”选项。
添加计算按钮和置“0”按钮,并将实例名称分别设置为“my_btn”和“my1_btn”。
添加动作脚本。
新建一个名称为动作的图层,在第一帧添加如下动作脚本:
my_btn.addEventListener(MouseEvent.CLICK,count);//为按钮“my_btn”添加事件侦听器
functioncount(event:
Event){
varr=parseFloat(r_txt.text);
varh=parseFloat(h_txt.text);
varv=Math.PI*r*r*h;
v_txt.text=String(Math.round(v*1000)/1000);
}
在上述动作脚本中,“r”和“h”是变量,用于记录圆柱体的半径和高;“Math.PI”是数学中的圆周率,变量“v”用来记录运算的结果。
函数“parseFloat”的作用,是将字符串转换为数字。
置“0”语句为:
my1_btn.addEventListener(MouseEvent.CLICK,count1);
functioncount1(event:
Event){
r_txt.text="0";
h_txt.text="0";
v_txt.text="0";
}
界面可设计成如图6-2-4的画面。
图6-2-4计算圆柱体体积的画面
4.影片剪辑的控制
(1)影片剪辑的尺寸
给影片剪辑命名后,可以用脚本来控制其尺寸、透明度与背景色。
名称要用“_mc”为后缀,如“my_mc”。
控制影片剪辑绝对尺寸的语句如:
my_mc.width=225;
my_mc.height=90;//单位是像素
控制影片剪辑相对尺寸的语句如:
my_mc.scaleX=1.2;
my_mc.scaleY=0.8;//“scaleX”和“scaleY”分别是影片剪辑在水平和垂直方向上进行缩放的倍数
2.影片剪辑播放、暂停与跳转
要控制影片剪辑播放、暂停与跳转,可使用下列语句:
my_mc.play();//播放
my_mc.stop();//暂停
my_mc.prevFrame();//跳转到上一帧并暂停
my_mc.nextFrame();//跳转到下一帧并暂停
my_mc.gotoAndPlay(n);//跳转到第n帧并播放
my_mc.gotoAndStop(n);//跳转到第n帧并暂停
5.加载与控制声音文件
对加载的声音文件进行控制,使其实现播放与停止。
例在SWF文件中加载一个名称为“毛主席的光辉.mp3”的声音文件,并控制其播放与停止。
新建一个文件夹,将“毛主席的光辉.mp3”放入其中,并在其中建立一个flash文件,发布为“加载控制声音文件.swf”,存放在同一文件夹中。
在舞台上建立按钮实例,命名为“mybtn”。
在动作脚本中写入如下代码:
varfl_SC:
SoundChannel;//此变量可创建一个声音通道
varfl_ToPlay:
Boolean=true;//此变量可跟踪要对声音进行播放还是停止
mybtn.addEventListener(MouseEvent.CLICK,fl_ClickToPlayStopSound);
functionfl_ClickToPlayStopSound(evt:
MouseEvent):
void
{
if(fl_ToPlay)
{
vars:
Sound=newSound(newURLRequest("毛主席的光辉.mp3"));
fl_SC=s.play();
}
else
{
fl_SC.stop();
}
fl_ToPlay=!
fl_ToPlay;//切换播放与停止
}
发布影片,测试效果。
在Flash中,停止所有声音瓣代码是:
SoundMixer.stopAll();
6.3Flash中的声音与视频运用
制作Flash课件,需要用到声音与视频素材。
1.声音的导入
在Windows操作系统中,Flash支持MP3和WAV两种声音格式。
要使用声音,要先将声音文件导入到Flash中的库。
单击“文件”/“导入”/“导入到库”命令,弹出“导入到库”对话框,选中要导入的声音文件,确定,声音文件就被导入到“库”中。
打开库面板,可以看到刚刚导入的声音文件,如图6-3-1所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第六章 flash课件制作 第六 flash 课件 制作