· 用户注册 · 设为首页 · 加入收藏 · 联系站长 · · ·
 | 网站首页 | 文章中心 | 图片中心 | 影音在线 | 下载中心 | 许愿祝福 | 我要投稿 | 
您现在的位置: 生物小吧 >> 文章中心 >> 网站建设 >> 正文 今天是:
第17课 认识动作面板和编写简单ActionScript程序
作者:佚名    文章来源:不详    点击数:993    更新时间:2010/6/3
         【字体:

第17课认识动作面板和编写简单ActionScript程序

    素材和源文件素材和源文件下载

  学习目的
    □ 编写简单程序实现动画的交互控制
    □ 认识动作面板
    □ 掌握在动作面板中编写ActionScript程序的基本方法
    □ 时间轴控制函数的使用方法

课前热身

    通过前面几章的学习,你已经掌握了一些动画的制作方法,那么怎么实现动画的交互控制呢?下面一起制作一个控制动画播放的简单范例。

    (1) 打开范例文件

    请打开素材下载中的ch5-1原始.fla。这是一个文字动画,文字首先从舞台左边飞入,然后由大变小。你可以先测试观察一下动画效果。打开的影片文件的图层结构如图17-1所示。

17-1 图层结构

   接下来,要在打开的这个影片文件基础上进行操作。

    (2)  定义第一帧的停止动作

     在“动画”图层上新添加一个图层,并重新命名为“AS”。选择“AS”图层的第一帧,打开“动作”面板,在其中左边的“动作工具箱”中,单击“全局函数”,展开以后,再单击“时间轴控制”,如图17-2所示。这时可以看到,“时间轴控制”类别下的函数都显示出来了。

图17-2 展开“时间轴控制”函数类别

    *专家提示:默认情况下,“动作”面板显示在软件窗口的下方,只需单击就可以展开面板。如果软件窗口中没有显示“动作”面板,你可以选择“窗口”|“开发面板”|“动作”命令,将“动作”面板打开。
    双击“时间轴控制”类别下的“stop”函数,在“动作”面板右边的“脚本输入区”出现一个程序行,如图17-3所示。

图17-3 双击stop函数

    完成以上操作以后,“AS”图层的第一帧发生了变化,上面显示一个“a”标志,如图17-4所示。

图17-4 帧动作标志

    现在测试一下影片吧。由于在第一帧定义了一个stop函数,所以影片停在第一帧,后面的动画没有接着播放。下面通过一个按钮来控制动画开始播放。

   (3) 通过按钮让动画开始播放

    在“AS”图层上新建一个“按钮”图层。选择“按钮”图层第一帧,打开“库”面板,将其中一个名字为“播放”的按钮元件拖放到舞台的合适位置。
    保持这个按钮实例处在选中状态,打开“动作”面板。在“动作工具箱”中展开“全局函数”|“影片剪辑控制”类别,双击该类别下的“on”函数,这样,“脚本窗口”中就自动出现相应的on程序代码,并且屏幕上同时还弹出了关于on函数的参数设置下拉列表框,如图17-5所示。

图17-5 定义on函数

   双击参数设置下拉列表框中的“press”,接着将光标移动到大括弧{的右边,然后再切换到“动作工具箱”,展开“全局函数”中的“时间轴控制”类别,双击这个类别下面的“play”函数,这时,在“脚本窗口”中会出现一个新的程序代码,最后单击“脚本窗口”上方的“自动套用格式”按钮,将“脚本窗口”中的脚本变得更清楚一些,最后完成的程序代码如图17-6所示。

图17-6完成的程序代码

    至此,“播放”按钮的程序代码就被定义好了。测试影片,然后单击按钮,你会发现动画开始播放了。

    (4) 让动画从第十五帧跳转播放

    下面实现动画播放到结尾再跳转到第十五帧循环播放的动画效果。选择“AS”图层的第三十帧(动画的最后一帧),按F7插入一个空白关键帧,在“动作”面板中,双击“时间轴控制”类别下的“gotoAndPlay”函数,这样,在“脚本窗口”中出现gotoAndPlay函数程序代码,在小括弧中输入“15”即可。
    至此就在“AS”图层的第三十帧定义了以下程序代码:
     gotoAndPlay(15);
    这个程序代码的功能是,当动画播放到结尾时,自动跳转到第十五帧继续播放。这样就形成一个从第十五帧到第三十帧循环播放的动画效果。测试观察一下吧。

   (5) 按钮控制动画跳转到第一帧

    前面实现了一个从第十五帧到第三十帧循环播放的动画效果,怎么停止这个循环呢?选择“按钮”图层的第一帧,从“库”面板中将一个名字为“停止”的按钮元件拖放到舞台合适位置。保持这个按钮实例处在选中状态,在“动作”面板中,定义这个按钮实例的程序代码是:
on (press) {
gotoAndStop(1);
}

    这段程序代码的定义方法和步骤(3)类似,这里不再详述。
    这段程序代码的功能是,当单击“停止”按钮时,跳转到影片的第一帧并停止播放动画。

       课堂讲解

    通过“课前热身”中范例的制作,你对“动作”面板的使用方法,以及编写简单的动画交互控制程序已经有了一个概括的认识。下面系统讲解一下相关的知识。
   1.认识“动作”面板
    Flash提供了一个专门处理动作脚本的编辑环境——【动作】面板。默认情况下,【动作】面板自动出现在Flash软件窗口的下方,如果【动作】面板没有显示出来,那么可以执行【窗口】|【开发面板】|【动作】命令来显示。
    Flash MX 2004提供了改进的【动作】面板。在这个面板中不再包括以前版本中的“标准模式”和“专家模式”。下面来认识一下【动作】面板的使用方法。
   (1)【动作】面板的组成
    【动作】面板是Flash的程序编辑环境,它由两部分组成。右侧部分是“脚本窗口”,这是输入代码的区域。左侧部分是“动作工具箱”,每个动作脚本语言元素在该工具箱中都有一个对应的条目,如图17-7所示。

图17-7【动作】面板

    在【动作】面板中,“动作工具箱”还包含一个“脚本导航器”(位置在如图17-7所示的左下角小窗口),“脚本导航器”是FLA文件中相关联的帧动作、按钮动作具体位置的可视化表示形式,你可以在这里浏览FLA文件中的对象以查找动作脚本代码。如果单击“脚本导航器”中的某一项目,则与该项目关联的脚本将出现在“脚本窗口”中,并且播放头将移到时间轴上的该位置。
   “脚本窗口”上方还有若干功能按钮,利用它们可以快速对动作脚本实施一些操作,如图17-8所示。

图17-8功能按钮

   (2)添加程序代码
   可以直接在【脚本输入区】中编辑程序代码、输入函数和参数或删除程序代码。还可以双击“动作工具箱”中的某一个函数,或单击“脚本窗口”上方的【将新项目添加到脚本中】按钮,向【脚本窗口】添加程序代码。
   一般情况下,可以在其上面定义程序代码的元素包括:关键帧、按钮、影片剪辑。前面的“课前热身”中分别定义了关键帧和按钮上面的程序代码,具体方法这里不再重复,请参看前面的相关步骤。有关影片剪辑的程序代码定义会在以后的章节中介绍。
   (3)固定动作脚本
   利用“脚本导航器”可以快速浏览影片不同位置的动作脚本,但是如果影片中动作脚本比较多,并且动作脚本分散于FLA文件中的多个位置,那么可以在【动作】面板中固定(就地锁定)多个脚本,以便在脚本之中移动。
   双击“脚本导航器”中的某一项,则该脚本会被固定,被固定的脚本会在“脚本窗口”的下方显示标签。如图17-9所示,在“脚本窗口”下方显示了3个标签,说明有3个脚本被固定。

图17-9被固定的脚本标签

    用鼠标单击这些被固定的脚本标签,可以在被固定的脚本之间来回切换。在图17-9上,目前“脚本窗口”中显示的是图层2第1帧上的动作脚本。
    如果想关闭被固定的脚本,那么用鼠标右键单击相应的脚本标签,在弹出的快捷菜单中选择【关闭脚本】命令即可。
(4)关于代码提示
    在【动作】面板中编辑动作脚本时,Flash 可以检测到正在输入的动作并显示代码提示,即包含该动作完整语法的工具提示,或列出可能的方法或属性名称的弹出菜单。当精确输入或命名对象时,会出现参数、属性和事件的代码提示,这样,动作脚本编辑器就会知道要显示哪些代码提示。
   例如,假设输入以下代码:
   var names:Array = new Array();
   names.
   当输入句点“.”时,Flash 就会显示可用于 Array 对象的方法和属性的列表,因为已经将该变量的类型指定为数组,如图17-10所示。 

图17-10代码提示

    “脚本窗口”上面有一个【显示代码提示】按钮1,在编辑动作脚本时,随时单击这个按钮也可以显示代码提示。
    (5)检查语法和标点
     要彻底弄清编写的代码是否能像预期的那样运行,需要发布或测试文件。不过,可以不必退出 FLA 文件就迅速检查动作脚本代码。语法错误列在【输出】面板中。还可以检查代码块两边的小括号、大括号或中括号(数组访问运算符)是否齐全。
     在【动作】面板中,可以用以下3种方法检查语法:
     ◆单击“脚本窗口”上方的【语法检查】按钮1
     ◆在【动作】面板中,单击右上角的按钮1,在弹出的菜单中选择【语法检查】命令。
     ◆在【动作】面板中,按快捷键Ctrl+T。

    2.“时间轴控制”类别下的函数
     “时间轴控制”类别下包括九个简单函数,利用这些函数可以定义动画的一些简单交互控制。下面讲解一下这些函数的用法。

     (1)gotoAndPlay
    一般形式:gotoAndPlay(scene,frame);
    作用:跳转并播放,跳转到指定场景的指定帧,并从该帧开始播放,如果没有指定场景,则将跳转到当前场景的指定帧。
    参数:scene,跳转至场景的名称;frame,跳转至帧的名称或帧数。
     有了这个命令,可以随心所欲地播放不同场景,不同帧的动画。
     例:
     当单击被附加了gotoAndPlay动作按钮时,动画跳转到当前场景第十六帧并且开始播放:
     on(release){
     gotoAndPlay(16);
     }
    例:
     当单击被附加了gotoAndPlay动作按钮时,动画跳转到场景2第一帧并且开始播放:
     on(release){
     gotoAndPlay("场景2",1);
     }

    (2)gotoAndstop
    一般形式:gotoAndstop(scene,frame);
    作用:跳转并停止播放,跳转到指定场景的指定帧并从该帧停止播放,如果没有指定场景,则将跳转到当前场景的指定帧。
    参数:scene:跳转至场景的名称;frame:跳转至帧的名称或数字。

    (3)nextFrame()
    作用:跳至下一帧并停止播放。
    例:单击按钮,跳到下一帧并停止播放:
     on(release){
     nextFrame();
     }

    (4)prevframe()
    作用:跳至前一帧并停止播放。
     例:单击按钮,跳到前一帧并停止播放:
     on(release){
     prveFrame();}

    (5)nextScene()
    作用:跳至下场景并停止播放。

     (6)PrevScene()
    作用:跳至前场景并停止播放。

    (7)play()
    作用:可以指定影片继续播放。
     在播放影片时,除非另外指定,否则从第一帧播放。如果影片播放进程被GoTo(跳转)Stop(停止)语句停止,则必须使用play语句才能重新播放。

    (8)Stop()
    作用:停止当前播放的影片,该动作最常见的运用是使用按钮控制影片剪辑。
     例如,如果需要某个影片剪辑在播放完毕后停止而不是循环播放,则可以在影片剪辑的最后一帧附加Stop(停止播放影片)动作。这样,当影片剪辑中的动画播放到最后一帧时,播放将立即停止。

    (9)StopAllSounds()
    作用:使当前播放的所有声音停止播放,但是不停止动画的播放。要说明一点,被设置的流式声音将会继续播放。
     例如:
     On(release){
     StopAllSounds();
     }
     当按钮被单击时,影片中的所有声音将停止播放。

    课后练习

    (1)配套光盘上提供了一个小球跳动的动画(配套光盘:\ch5\小球跳动.fla),请通过分别定义附加在帧和按钮上的程序代码,来控制动画的播放。
    (2)创建一个包括两个以上场景的影片,利用“时间轴控制”类别下的函数控制场景间的跳转。

文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    生物小吧