List组件小实例

1、建立一个Flash文档,拖一个List组件到库中

2、建立一个链接类,ListMain

3、保存as类与Flash文件在同一文件夹下。

4、在同一文件夹下再建一个images文件夹用来放置所需图片

5、在类里面输入以下代码

package
{

 import flash.display.MovieClip;
 import fl.controls.List;
 import fl.data.DataProvider;
 import flash.text.TextFormat;
 import fl.events.ListEvent;
 import fl.controls.*;
 import fl.containers.*;
 import flash.events.*;
 import flash.net.URLRequest;
 import flash.display.Loader;
 import flash.events.IOErrorEvent;


 public class ListMain extends MovieClip
 {
  private var list:List=new List();
  private var dp:DataProvider=new DataProvider();
  private var loader:Loader;
  private var loader1:Loader;
  private var arr:Array = new Array();
  private var arr1:Array = new Array();
  public function ListMain()
  {
   initdp();
   initloader();
   initlist();
   
  }
  private function initloader():void
  {
   for (var i:int = 0;  i <11; i++ )
   {
    loader=new Loader();
    loader.load(new URLRequest("images/"+(i+1)+".jpg"));(注意图片名与文件夹内名字一致)
    arr[i] = loader;
    addChild(arr[i]);
    

   }
   
   loader.contentLoaderInfo.addEventListener(Event.COMPLETE,oncomplete);
   
  }
  private function oncomplete(e:Event):void
  {
   for(var j:int=0;j<11;j++)
   {
    arr[j].height =375;
    arr[j].width = 400;
    arr[j].x=125;
    arr[j].y=12.5;
    stage.addChild(arr[j]);
    arr[0].alpha = 1;
    arr[j].alpha = 0;
   }
  }
  private function initlist():void
  {
   var TxtF:TextFormat = new TextFormat("宋体",30,0xff0000);
   list.setRendererStyle("textFormat",TxtF);
   
   list.dataProvider = dp;
   list.iconField = "lx";
   list.labelField = "aa";
   
   list.height = 375;
   list.width = 100;
   list.rowHeight = 80;
   list.y=12.5;
   list.x=13;
   
   stage.addChild(list);
   list.addEventListener(ListEvent.ITEM_CLICK,getItem);
  }
  private function initdp():void
  {

   for(var t:int=0;t<11;t++)
   {
    loader1 = new Loader();
    loader1.load(new URLRequest("images/"+(t+1)+".png"));
    arr1[t] = loader1;
   }
   loader1.contentLoaderInfo.addEventListener(Event.COMPLETE,oncomplete11);
  }
  
  
  private function oncomplete11(e:Event):void
  {
   
   for(var k:int=0;k<11;k++)
   {
    dp.addItem({aa:String(k+1),lx:arr1[k]});
   }
   
  }
  private function getItem(e:ListEvent):void
  {
   for(var k:int=0;k<11;k++)
   {
    if(list.itemToLabel(e.item) == String(k+1))
    {
     arr[k].alpha=1;
    }
    else
    {
     arr[k].alpha=0;
    }
   }
  
  }


 }

}

//效果见上传的文件

posted on 2012-10-23 23:36  God is a girl  阅读(176)  评论(0编辑  收藏  举报

导航