求高手,在flash里鼠标左右拖动图片替换~就像像现在的触屏手机滑动菜单一样~

如题所述

相册预览(鼠标左右拖动图片替换)
1.文件----新建-----新建Flash文件(ActionScript3.0)然后保存到指定的文件夹中
2.文件---导入---导入到库. 把需要的素材导入到库
3.选中库中的背景素材右键----链接---选择:为ActionScript导出;类:BackgroundImage
4.插入---元件----影片剪辑元件。名称:image0.把素材image00拖放进来,并位于舞台的中心位置(也可以不位于舞台的中间,看一下效果)
5.插入----元件----影片剪辑元件。名称:image1,把素材image1拖放进来。并位于舞台的中心位置(也可以不位于舞台的中间,看一下效果)
以此方法,把其余图片也建成影片剪辑元件
6.编辑----编辑文档。回到场景编辑区
7.把影片剪辑元件image0,拖放到舞台上,并适当改变大小(大小自己定),在下方属性面板:实例名称:image0.
把影片剪辑元件image1,拖放到舞台上,并适当改变大小(大小自己定),在下方属性面板:实例名称:image1.
以此方法,把别的影片剪辑元件也拖放进来

8.在保存Flash文件的文件夹下建立文件夹classes,(也可以不建立)
9.文件----新建----新建ActionScript文件,保存在classes文件夹下,名称:main
10.在main文件中输入如下代码:
package classes{
import flash.display.Sprite;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.utils.setInterval;
import flash.utils.clearInterval;
public class main extends Sprite {//自定义main类,作为文档类,然后再文档类中实例化影片所使用的各种对象
private var backgroundImage:BackgroundImage=new BackgroundImage(550,400);
private var bitmap:Bitmap=new Bitmap(backgroundImage);
private var mcArray:Array=new Array();
private var outIntervalID:uint;
private var inIntervalID:uint;
private var currentImageID:uint;
public function main ():void {//作为文档类主函数,执行下面编写的各种函数
createBG ();
createArray ();
setInterval (turnTop,20);
}
private function createBG ():void {//定义背景图像的属性,并将其添加到舞台中
with (bitmap) {
x=0;
y=0;
}
stage.addChildAt (bitmap,0);
}private function createArray ():void {//将舞台中的相册图片追加到数组中,并定义图片的坐标和旋转
for (var i:int=0; i<6; i++) {
mcArray.push (this["image"+i]);
with (mcArray[i]) {
x=275;
y=200;
rotation=Math.round(Math.random()*30);
label=String(mcArray[i].rotation);
}
}
}private function turnTop ():void {//通过循环为顶部的相册图片添加鼠标事件
with (this.getChildAt(5)) {
if (rotation!=0) {
rotation-=1;
addEventListener (MouseEvent.MOUSE_DOWN,dragIt);
addEventListener (MouseEvent.MOUSE_UP,putItDown);
addEventListener (MouseEvent.CLICK,onTop);
}
}
}private function dragIt (event:MouseEvent=null):void {//响应顶部图像的鼠标事件
event.target.startDrag ();
}
private function putItDown (event:MouseEvent=null):void {//响应顶部图像的鼠标事件
event.target.stopDrag ();
with (event.target) {
x=275;
y=200;
}
}
private function onTop (event:MouseEvent=null):void {//响应顶部图像的鼠标事件
outIntervalID=setInterval(moveImage,50);
for (var i:int=0; i<6; i++) {
if (event.target==mcArray[i]) {
currentImageID=i;
}
}
}private function moveImage ():void {//移动顶部的图像
mcArray[currentImageID].x+=60;
mcArray[currentImageID].y-=75;
if (mcArray[currentImageID].x>=475) {
mcArray[currentImageID].x=375;
mcArray[currentImageID].y=100;
clearInterval (outIntervalID);
inIntervalID=setInterval(move2Image,50);
this.setChildIndex (mcArray[currentImageID],0);
}
}private function move2Image ():void {//自动旋转顶部的图像
with (mcArray[currentImageID]) {
x-=40;
y+=40;
}
if (mcArray[currentImageID].x<=275) {
with (mcArray[currentImageID]) {
x=275;
y=200;
rotation=Math.round(Math.random()*50);
}
clearInterval (inIntervalID);
}
}
}
}
11.在下方属性面板文档类中输入:classes.main;
或者 文件----发布设置:ActionScript 版本 设置:文档类:classes.main
12.控制----测试影片(Ctrl+Enter)
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-10-13
你试试到Flash8.net(闪吧)去找找,那里资源很多,应该能找到你要的
第2个回答  2012-04-14
相似回答