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

as 3 flash图片切换代码

这是转其它朋友的一款用flash as 3.0实现图片轮换效果的代码程序哦。

代码如下:
stop();
var g_filters:GlowFilter=new GlowFilter(0xFFFFFF,1,3,3,5,BitmapFilterQuality.LOW);
var d_filters:DropShadowFilter = new DropShadowFilter(3, 45, 0x000000, 60, 8, 8);
var url_array:Array =[],btn_array:Array =[],myXML:XML = new XML(),j:uint=0,maskSprite:Sprite=new Sprite(),mySprite:Sprite=new Sprite(),title_txt:TextField=new TextField();
draw(maskSprite);
addChild(maskSprite);
maskSprite.x=stage.stageWidth/2-maskSprite.width/2;
maskSprite.y=stage.stageHeight/2-maskSprite.height/2;
function draw(sprite:Sprite,w:uint=400,h:uint=300 ,bgColor:uint=0xffff00 ):void {
  sprite.graphics.beginFill(bgColor);
  sprite.graphics.drawRect(0, 0, w, h);
  sprite.graphics.endFill();
}
title_txt.width =100;
title_txt.x=150;
title_txt.y=280;
title_txt.autoSize=TextFieldAutoSize.CENTER;
addChild(mySprite);
mySprite.mask=maskSprite;
addChild(title_txt);
var XML_URL:String = "http://sxl001.xfyun.com/xmlImages.xml";
var myXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(myXMLURL);
myLoader.addEventListener("complete", xmlLoaded);
var xmlLong:uint;
function xmlLoaded(event:Event):void {
  myXML = XML(myLoader.data);
  xmlLong =myXML.child("image").length();
  for (var i:uint =0; i<xmlLong; i++) {
    url_array.push([myXML.image[i].@title,myXML.image[i].@url]);

  }
  event.target.removeEventListener("complete", xmlLoaded);
  init();
}

function init() {
  var loader:Loader = new Loader();
  loader.load(new URLRequest(url_array[j][1]));
  loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loadProgress);
  loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadComplete);
  function loadProgress(e:ProgressEvent):void {
    var percent:Number=Math.round(e.bytesLoaded/e.bytesTotal*10000)/100;
    title_txt.text=url_array[j][0]+" "+percent+" %";
    title_txt.filters=[g_filters];
    title_txt.mouseEnabled=false;
  }
  function loadComplete(event:Event):void {
    var loadBitmap:Loader=Loader(event.target.loader);
    var image:Bitmap=Bitmap(loadBitmap.content);
    image.x=j*400;
    image.width=400;
    image.height=300;
    mySprite.addChild(image);
    loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,loadComplete);
    loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadProgress);

    j++;
    if (j<xmlLong) {
      mySprite.x=stage.stageWidth/2-j*400;
      mySprite.y=stage.stageHeight/2-mySprite.height/2;
      init();
    } else {

      title_txt.text=url_array[0][0];
      var myBg:bg=new bg();
      myBg.x=stage.stageWidth;
      myBg.y=stage.stageHeight;
      addChild(myBg);

      mySprite.x=0;
      mySprite.y=stage.stageHeight/2-mySprite.height/2;
      for (var i:uint=0; i<xmlLong; i++) {
        var myBtn:btn=new btn();
        myBtn.i=i;
        myBtn.t.text=""+uint(i+1);
        myBtn.mouseChildren=false;
        myBtn.x=stage.stageWidth-myBtn.width*(xmlLong-i);
        myBtn.y=stage.stageHeight-myBtn.height;
        btn_array.push(myBtn);
        addChild(myBtn);
        myBtn.addEventListener(MouseEvent.CLICK,onClick);
      }
    }
  }
}
var endX:uint;
function onClick(event:MouseEvent) {
  var mc:MovieClip=event.target as MovieClip;
  mc.m.gotoAndStop(2);
  for (var i:uint=0; i<btn_array.length; i++) {
    var tempBtn:MovieClip=btn_array[i];
    if (tempBtn!=mc) {
      tempBtn.m.gotoAndStop(1);
    }
  }
  endX=int(mc.i)*400;
  mySprite.addEventListener(Event.ENTER_FRAME,onMove);
}
function onMove(event:Event) {
  var disx:Number =(endX-event.target.x)/12;
  event.target.x=disx;
  if (Math.abs(event.target.x+endX)<=5) {
    event.target.x=-endX;
    event.target.removeEventListener(Event.ENTER_FRAME,onMove);
  }
}

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