Flash动画的控制设计结果:能够利用标尺控制动画的速度、缩放、旋转,播放控制按钮带有Flash动态效果。程序效果如图1所示。图1Flash动画的使用解题思路:(1)利用Flash动画的属性和方法控制动画的速度、缩放、旋转。(2)预先制作Flash动画格式的按钮,然后在程序中用热物响应方式控制。1.新建一个文件,打开文件属性窗口,定义文件名称为“flash”,设置显示窗口大小可变,取消对菜单栏的选择。2.拖入一个显示图标到流程线上,命名为“布局”,按照程序效果要求建立基本程序画面,如图2所示。图2建立基本程序画面3.选择【Insert】/【Media】/【Flash】菜单命令,则会出现一个【FlashAssetProperties】对话窗口,如图3所示,通过这个对话窗口可以选择Flash动画文件并对其属性进行设置。图3Flash动画属性窗口在这个窗口中主要的属性有:Media:媒体文件存储模式Playback:播放模式,其中还有几个选项,如Image(动画图象是否立即显示)、Paused(动画是否在开始帧暂停)、Sound(动画是否带声音)、Loop(动画是否循环播放)、DirecttoScreen(动画是否直接显示在屏幕最前)等Quality:动画播放质量ScaleMode:动画缩放模式Tempo:动画播放速度Scale:动画缩放比例4.任意选择一个Flash文件,根据需要调整其属性设置,如图4所示,然后关闭属性窗口,修改图标名称为“动画”。图4选择Flash文件并调整属性5.运行程序,可以看到一个循环播放的Flash动画。6.拖入一个群组图标,命名为“标尺”。在其中用知识对象“Slider”建立三个标尺,分别用于控制速度、大小和旋转,并按照程序要求布置在动画周围,如图5所示。图5建立三个标尺标尺取值范围说明:Flash动画的播放速度是以帧/秒来衡量的,所以标尺“速度”的取值可以设置在0~100之间动画的缩放是按百分比来衡量的,所以标尺“大小”的取值可以设置在0~300之间动画的选择是以角度来计算的,所以标尺“旋转”的取值可以设置在0~360之间。提示:三个标尺的游标名称是不同的,依次为“slider”、“slider2”和“slider3”,这是系统自动定义的。7.再拖入一个群组图标,命名为“按钮”。在其中引入三个预先制作好的按钮动画,并按照程序要求布置在画面下方,如图6所示。这里使用的三个按钮具有不同的动态效果。图6引入具有动态效果的按钮8.双击Flash动画图标“播放”,能够打开Flash动画图标的属性窗口,这个属性窗口与普通显示图标的属性窗口基本相同。可以设置动画的层次、显示过渡效果、显示模式等属性,这里我们设置按钮动画的显示模式为“Transparent”,如图7所示。这样动画中白色的区域就会变得透明。图7设置按钮动画的显示模式9.利用交互图标和计算图标建立具有三个热物响应分支的交互结构,如图8所示。各热物对象分别选择相应的动态按钮。。图8建立具有三个热物响应分支的交互结构10.打开计算图标“播放”,输入如图9所示语句,判断Flash动画是否处于暂停状态,是则继续播放动画。图9继续播放动画11.同理,在计算图标“暂停”中输入如图10所示语句,判断Flash动画是否处于播放状态,是则暂停播放。图10暂停播放12.用计算图标再建立一个条件响应类型的交互分支,如图11所示。我们要用它建立动画播放速度与速度标尺之间的联系。图11添加以个条件响应类型的交互分支13.双击条件分支的计算图标,打开其计算窗口,输入如图12所示表达式,定义利用游标“slider”的位置值来确定播放速度。图12利用游标“slider”的位置值来确定播放速度语句分析:第一条语句定义动画的播放模式为“fixed”,即按照用户给定的速度值播放动画。第二条语句利用变量speed记录游标“slider”当前位置值,由于动画播放速度必须是整数,所以要对游标位置值取整。第三条语句利用fixedRate属性使动画按照给定的速度播放。14.打开条件分支属性窗口,设置分支的条件为:speedINT(PathPosition@slider)如图13所示,由于设置变量speed记录了游标位置值,因此当游标被移动时,变量值就不等于游标值,因而程序就能够执行本分支。图13设置分支条件和属性提示:分支属性的【Automatic】项一定要设置为“WhenTrue”。15.再用计算图标建立两个条件分支,一个是比例分支,设置分支属性为“scaleINT(PathPosition@slider2)”;另一个是旋转分支,分支属性为“rotateINT(PathPosition@slider3)”。如图14所示,以实现对动画大小和旋转的控制。图14对动画大小和旋转进行控制16.在比例分支的计算图标中输入如图15所示语句,定义利用游标“slider2”的位置值来确定缩放比例。图15利用游标“slider2”的位置值来确定缩放比例17.在旋转分支的计算图标中输入如图16所示语句,定义利用游标“slider3”的位置值来确定动画旋转角度。图16利用游标“slider3”的位置值来确定旋转角度18.现在运行程序。能够利用标尺任意调整Flash动画的播放速度、旋转角度和显示大小,并使用播放、暂停和退出按钮控制动画的播放了。范例小结:Flash动画播放的效果与我们对它的设置有很大的关系。下面是一些在应用Flash动画时应当注意的问题。在满足程序需要的情况下,尽量使用较低的画面质量,这样可以获得较高的播放速度,使动画画面显得更为流畅。如果由可能,最好设置你的显示器的色彩深度为8位(256色),因为在这种情况下动画可以获得最快的播放速度。尽量使用Opaque(不透明)模式。由于透明模式需要更多的处理时间,因此在动画后面没有其它对象或动画背景与画面背景相同的情况下,尽量使用不透明模式。尽量使用“DirecttoScreen”属性,只要不涉及到层次控制或透明需要,就应当使用这种模式,因为它能够提供更快的播放速度。要使系统变量GlobalTempo有一个较高的数值。除非使用“DirecttoScreen”属性和fixedRate设置,否则Flash动画播放的速度不会快过GlobalTempo的值。为了保证动画的流畅播放,请至少设置系统变量GlobalTempo为30。使用Lock-step或Fixed属性设置来调节动画播放速率。Lock-step属性的播放速率是由GlobalTempo决定的。如果在Flash动画中没有动态画面,例如仅仅是一些文字或图片,那么就要设置动画图标具有Static属性,这样Authorware就不用反复刷新它了。当我们使用函数修改Flash动画的属性时,尽量直接对Flash动画(sprite)进行设置,这比对Flash图标(icon)进行设置要更加快捷。在播放Flash动画时,尽量避免同时播放其它内容,这会影响到动画播放的效果。交互控制时应避免使用热区响应,应采用热物对象响应。若需要对Flash动画画面某一位置进行交互,可以绘制一个透明图形,并以之为热物对象进行响应。