'list'에 해당되는 글 1건

  1. File Listing.. 2008/09/22

File Listing..

from air 2008/09/22 13:00
지금 만들고 있는 빌더에서 파일을 추가할  때 폴더 내의 파일을 리스팅하고자 한다..
뭐 간단하겠지만.. 그 중 이미지 파일만 추려내서 가져오려고..

private function dragDrop(e:NativeDragEvent) : void
  {
   var typeArray:Array = ["jpg", "JPG", "jpeg", "JPEG", "gif", "GIF", "png", "PNG", "bmp", "BMP"]; 
   var files:Array = e.clipboard.getData( ClipboardFormats.FILE_LIST_FORMAT ) as Array;
   var newRenderers:Array = [];
   for(var i:int=0; i<files.length; i++)
   {
    var a:String = files[i].url;
    var indexNum:Number = a.indexOf("."); // 확장자가 있는지 없는지를 검색한다
    if(indexNum > 0) // 확장자가 있다면..
    {
     addItem(files[i].url);
    }
    else // 확장자가 없다면.. 즉, 폴더라면..
    {
     
var dataFile:File = new File(a);
     dataFile.getDirectoryListingAsync();
     var myArray:Array = dataFile.getDirectoryListing();
     for(var h:int=0; h<dataFile.getDirectoryListing().length; h++)
     {
      addItem(myArray[h].url);     
     }
    }
    function addItem(data:String) : void
    {
     var 
url:String = data;
     var target:String = data.substr(-3);
     var cnt:Number = typeArray.length;
     for(var i:int=0; i<cnt; i++)
     {
      if(target == typeArray[i])
      {
       var r:IUIComponent = newRenderers[i] = _itemRendererFactory.newInstance();
       IDataRenderer(r).data = data;
       addChild(DisplayObject(r));
       _items.splice(_dragTargetIdx,0, data);
       renderers.splice(_dragTargetIdx,0,r);
      }  // 이부분은 따로 사용하는 부분인지라.. 참고할 내용은 아니오..ㅡㅡ; 이넘을 이용해서 file 을 추가합니다~
     }
    }
   }


사용자가 직접 폴더를 열어서 사진만 골라다가 넣게 할 수 있겠지만.. 
그거.. 사용자 입장에선 은근히 귀찮거든..;
폴더로 넣으면 자동으로 하게해주고 싶어서;;
2008/09/22 13:00 2008/09/22 13:00
Tag // , ,

댓글을 달아 주세요