当前位置:软件学习 > Flash >>

实例学用Flash MX增强的AS功能

Macromedia Flash MX在程序员以及设计师的两种不同风格与功能的界面上做得非常好,我们可以非常轻松的在 两者之间进行切换。你所要做的只是选择Window(窗口)-> Panel Sets(面板设置)->Developer(开发者),就可以由Desiger界面切换到Developer界面。

  新改进的Flash ActionScript是根据欧洲的ECMA-262编码标准写的,在Flash MX中,已经剔除了Flash 5和以前版本的所有不符合这个标准的语句和代码。新的Action Script有两类:一类是单独功能的语句,例如运算符,变量,属性,方法,流程控制语句等;而另一类即是面向对象和新加入的部件概念。面向对象和新加入的部件概念主要又分4小类:Core;Movie;Client/Server;Authoring。下面我们就将通过实例学习几个常用的而功能上比Flash 5又有很大提高的AS命令 。

  Flash MX对时间轴的改进:

  1) 打开我们在《Flash MX的自由变形工具》中做好的Flash原文件,在时间轴上点击Insert New Floder(插入新文件夹)按钮(如图1),可以在插入一个用于放置时间轴的文件夹,这样大大的方便了复杂动画的制作,今后再也不会在几十个层当中辛苦的寻找需要编辑的层了,实在是很体贴的改进。

  2) 我们新建一个文件夹,将时间轴上所有的层都拖拽到这个文件夹中,点击,文件夹上的小箭头可以使不显示文件夹下的层,再次点击可以展开文件夹。这样使得界面相当清爽。


作者:pcking出处:cpcw责任编辑: [ 2002-05-28 12:57 ]
Flash MX新的Action Script有两类:一类是单独功能的语句,另一类即是面向对象和新加入的部件概念

  用AS控制音乐循环播放

  1) 在新建一个文件夹命名为“声音”,然后在此文件夹中新建一层。做Flas易做图当然不可能少了声音,大家在使用Flash 5的时候肯定都是将声音拖拽到时间轴上再设置其loop属性为100或200来实现背景音乐的循环,现在我们要学的时,怎样利用AS控制音乐的循环播放。

  2) 使用菜单命令File(文件)-Import(导入)导入一个声音文件,在Library中找到这个声音文件,对其用鼠标右键单击,在弹出的菜单中选择Linkage。(如图2)

  3) 我们可以看到打开的Linkage面板,这个面板与Flash相比还是做了一定的改进的。将Identifier属性改为sound 1,并且将下面的Export For ActionScript(当前动画使用)选项前的选择框打上勾,点击OK按钮完成设置。(如图3)

  4) 鼠标单击时间轴上“声音”文件夹下层的第一帧,并且打开位于工作区域下方的Actions-Frame面板。点击右上角的图标(如图4)在弹出的菜单中选择Export Mode,使用专家模式对AS进行编辑。输入如下AS:(如图5)

  Sound.prototype.atcPLay=function(id,loop)
  {
    this.attachSound(id);
    this.start();
    if(loop)
      this.onSoundComplete=this.start
  };
  mxSnd=New Sound();
  mxSnd.atcPlay("sound1",true);
  //此循环函数由5D多媒体画魔原创

  在此段AS中,应当注意onSoundComplete事件的使用方法,onSoundComplete发生在声音结束时,而start方法可以控制声音开始播放。

  5) 最后来详细讲解一下这段AS。

  Sound.prototype.atcPLay=function(id,loop){this.attachSound(id);this.start();
    //首先我们定义一个函数atcPlay用来控制音乐的循环,此函数必须获得声音的linkage id以及设置的loop属性值才可以运行。在函数中使用attachSound命令从library中调入声音文件,使用start开始播放。
  if(loop)this.onSoundComplete=this.start};
    //如果loop值为true则当声音播放结束后,重新开始播放。
  mxSnd=New Sound();
    //新建立一个SOUND的函数
  mxSnd.atcPlay("sound1",true);
    //设置初始值,linkage id(为sound1)以及设置的loop属性值(为true)传递给函数


作者:pcking出处:cpcw责任编辑: [ 2002-05-28 12:57 ]
Flash MX新的Action Script有两类:一类是单独功能的语句,另一类即是面向对象和新加入的部件概念

  使用LoadMovie()导入JPG文件

  1)大家都知道在Macromedia Flash 5.0中的LoadMovie()是不支持JPG文件格式的,而我们在实际的使用当中有无法避免的要遇到动态导入很多图片的情况,所以只好先用Flash将JPG图片一张一张的做成SWF格式的文件后再使用LoadMovie()进行导入,如果有上百张的图片要做,我们所能做的就是对你说一声,很遗憾...。但现在不同了,Flash MX加强的LoadMovie()可以支持JPG格式文件的导入,以前那种悲惨的遭遇可以成为历史了。

  2)使用菜单命令新建一个元件命名为“box" ,类型为按钮类型。在工具栏上选择Rectangle Tool(矩形工具)(Stroke color(边框颜色)为无,Fill color(填充颜色)为白色)绘制一个矩形。

  3) 使用Arrow Tool(选择工具)选中这个矩形,在工作区域下面的Properties 面板上设置矩形的宽为80px,高为20px。(如图6)然后使用Align面板设置矩形居中对齐。

  4) 回到Scene 1,在时间轴上展开“人“文件夹,在此文件夹中新建一层,从Library中拖拽box元件到这一层中。(如图7)

  5) 使用图形制作软件(如Fireworks,Photoshop等)做一张图片,(宽150,高120),并输出为JPG格式,放置在于动画文件同一目录下。在本例中,我利用Fireworks制作了一张名为bg.jpg的图片。

  6) 使用Arrow Tool选中"box"元件,在Action面板上输入如下AS:

  on (release) {
    loadMovie("bg.jpg", 1);
   }

  7)按下CTRL+ENTER进行测试,Flash MX已经动态的导入了这张JPG图片。(如图8)

  总结:

  由于Flash MX的功能非常强大,笔者不可能一一详细列举AS的语法与参数,只能选择一些有代表性的,实用的功能进行讲解,希望大家读完之后能对Flash MX有大概的了解,对技术上的改进有清晰的印象。

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,