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原文件,在时间轴上点击Insert New Floder(插入新文件夹)按钮(如图1),可以在插入一个用于放置时间轴的文件夹,这样大大的方便了复杂动画的制作,今后再也不会在几十个层当中辛苦的寻找需要编辑的层了,实在是很体贴的改进。

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)传递给函数

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有大概的了解,对技术上的改进有清晰的印象。
共有 0 位网友发表了评论,得分 0 分,平均 0 分 查看完整评论