转载请注明作者:刘常(琴者qinz)
[
效果]
[预备]
1、新建文件夹,放几张大图,宽320高240,名为d1.jpg、d2.jpg、d3.jpg、d4.jpg,相应的小图,名为x1.jpg、x2.jpg、x3.jpg、x4.jpg,宽80高40。
2、新建
FLASH文件,保存在同文件夹下。
[步骤]
1、导入上面缩略图到FLASH中,转为影片剪辑,在主场景中的实例名分别为xtp1_mc、xtp2_mc、xtp3_mc、xtp4_mc。
2、画一矩形,宽320高240,转为影片剪辑,在主场景中的实例名为mask_mc。
3、在主场景的第一帧写如下代码:
//////////////////创建大图片影片剪辑//////////////////
this.createEmptyMovieClip("dtp_mc", this.getNextHighestDepth());
dtp_mc._x = 0;
dtp_mc._y = 100;
dtp_mc.setMask(mask_mc);
dtp_mc.createEmptyMovieClip("dgdtp_mc", this.getNextHighestDepth());
var image_mcl:MovieClipLoader = new MovieClipLoader();
anzs_mc.swapDepths(dtp_mc);
/////////////循环语句///////////
for (i=4; i>0; i--) {
//////////////////载入外部图片及坐标//////////////////
dtp_mc.dgdtp_mc.duplicateMovieClip("tp"+i+"_mc", i);
this.dtp_mc["tp"+i+"_mc"]._x = 320*(i-1)+115;
image_mcl.loadClip("d"+i+".jpg", "dtp_mc.tp"+i+"_mc");
//////////////////缩略图的坐标/////////////////
this["xtp"+i+"_mc"]._x = 80*(i-1)+115;
anzs_mc._x = 115;
this["xtp"+i+"_mc"]._y = anzs_mc._y=60;
//////////////////按下缩略图大图缓冲移动////////////
this["xtp"+i+"_mc"].id = i;
this["xtp"+i+"_mc"].onRelease = function() {
aa = this.id;
dtp_mc.onEnterFrame = function() {
dtp_mc._x -= ((aa-1)*320+dtp_mc._x)/4;
anzs_mc._x = -dtp_mc._x/4+115;
if (Math.floor(dtp_mc._x) == -(aa-1)*320) {
delete dtp_mc.onEnterFrame;
}
};
};
}
[源文件]
点击图片缓冲移动.rar进入论坛和作者讨论学习:
http://space.flash8.net/bbs/thread-358472-1-2.html