小小菜鸟的web菜园子

web开发学习。好记性不如烂笔头。每天进步一点点!

导航

拖拽桌面的图片文件到AIR程序.

复制到AIR工程,运行:
代码:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" 
    layout
="vertical"
    creationComplete
="init()">
    
<mx:Script>
        
<![CDATA[
            import flash.desktop.DragActions;
            import mx.controls.Alert;
            import mx.controls.Image;
            import flash.filesystem.File;
            import flash.desktop.TransferableData;
            import flash.desktop.TransferableFormats;
            import flash.events.NativeDragEvent;
            import flash.desktop.DragManager;
         
            private function init():void{
                this.addEventListener(NativeDragEvent.NATIVE_DRAG_ENTER,onDragIn);
                            this.addEventListener(NativeDragEvent.NATIVE_DRAG_DROP,onDrop);
                            this.addEventListener(NativeDragEvent.NATIVE_DRAG_EXIT,onDragExit);
            }
            
        public function onDragIn(event:NativeDragEvent):void{
                   DragManager.acceptDragDrop(this);
            }

            public function onDrop(event:NativeDragEvent):void{
                DragManager.dropAction = DragActions.COPY;
                var dropfiles:Array = event.transferable.dataForFormat(TransferableFormats.FILE_LIST_FORMAT) as Array;
                for each (var file:File in dropfiles){
                    switch (file.extension){   
                        case "png" : 
                            addImage(file.nativePath);
                            break;
                        case "jpg" : 
                            addImage(file.nativePath);
                            break;
                        case "gif" : 
                            addImage(file.nativePath);
                            break;
                        default: 
                           Alert.show("Unmapped Extension");
                    }
              }
            }
           
            public function onDragExit(event:NativeDragEvent):void{
                trace("Drag exit event.");
            }
            
            private function addImage(nativePath:String):void{
                var i:Image = new Image();
            if(Capabilities.os.search("Mac") >= 0){
                            i.source = "file://" + nativePath;
                        } else {
                    i.source = nativePath;
                        }
            this.addChild(i);
            }
       
        
]]>
    
</mx:Script>
</mx:WindowedApplication>

posted on 2008-04-27 20:24  『小小菜鸟』  阅读(1539)  评论(6编辑  收藏  举报