BitComet 旗下网站

转到日志
相关贴吧:
flash 面向对象 电子相册 [短篇 ]

用flash编写相册(面向对象方法)

楼主 发表于:2008-11-19 09:34:08 [回复]

制作步骤如下:

一、编写photoAlbum类

1、新建一个txt类型文件,将文件名改为photoalbum_class.as。

2、打开photoalbum_class.as,在里面输入如下内容:

_global.photoAlbum=function(holder_mc,photos_arr){  

         this.holder=holder_mc;

         this.photos=photos_arr;

         this.showPhotoAt(0);

}; /*这是photoAblum类的构造函数*/

photoAlbum.prototype.showPhotoAt=function(n){

        var  lastIndex=this.photos.length-1;

        if (n > lastIndex)  n=0;

        else  if (n<0 )  n= lastIndex;

        this.index=n;

        this.holder.loadMovie(this.photos[this.index]);

};/*这是photoAlbum类的showPhotoAt方法,实现效果是显示序号为N的图片。*/

photoAlbum.prototype.next=function(){

       this.showPhotoAt(this.index+1);

};/*这是photoAlbum类的“下一张”的方法。*/

photoAlbum.prototype.prev=function(){
       this.showPhotoAt(this.index-1);

};  /*这是photoAlbum类的“前一张”的方法。*/

二、建立flash文件

1、新建一个flash文档,该文档建四个图层

2、最上面一层加入如下代码

    #include  "photoalbum_class.as";/*此处将类的文件包含进本文档,便于调用photoAlbum类*/

3、在第二层中加入如下代码

    this.createEmptyMovieClip("holder_mc",1);  /*这是在场影中创建一个空的影片*/

    photos_arr=["pic1.jpg","pic2.jpg","pic3.jpg"];/*这是创建文件名数组,将文件名放入数组中,便于调用。*/

    album=new photoAlbum(hloder_mc,photos_arr);/*这是创建一个新的photoAlbum实例*/

4、在第三层中加入如下代码

     btn_next.onRelease=function(){

           this._parent.album.next();  /*这是“前进”按钮的代码*/

     };

     btn_prev.onRelease=function(){

          this._parent.album.prev(); /*这是“后退”按钮的代码*/

     };

5、在最下面一层添加两个按钮,分别命名为"btn_next","btn_prev"。

6、保存文件。

7、在该文件夹下放入三个图片,分别为"pic1.jpg","pic2.jpg","pic3.jpg"。

8、测试影片。

三、补充说明

1、本实例源于《Flash Mx编程与创意实现》,作者是Robert  Penner,一位加拿大的FLASH创作人、编程人员及作家。作者的主页是http://www.robertpenner.com/profmx

2、由于原书不适合初学者阅读习惯,故按制作FLASH的步骤将原实例重新组织了一下。

3、上述代码中的/*  */之间是代码的注释,是便于阅读的,在运行时不起任何作用。


 

您现在还没有登录,请在登录后发贴