两个 flex拖拽 案例

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="450" height="350" creationComplete="initApp()" backgroundColor="#FFFFFF" fontSize="12">

  <mx:Script> 
   <![CDATA[   
    private function initApp():void{     
     words.dataProvider=['Water','水','Car','汽车','House','房屋','Book','书籍','Music','音乐',
     'Sandwich','三明治']; english.dataProvider=[]; chinese.dataProvider=[];   
    }
    ]]>
  </mx:Script> 
  
  <mx:Panel x="0" y="0" width="450" height="350" layout="absolute" title="Sort Words By Language">   
   <mx:Label x="7" y="3" text="Drag to Correct Language"/>   
   <mx:List x="7" y="25" id="words" width="200" height="275" allowMultipleSelection="true" dragEnabled="true"></mx:List>   
   <mx:Label x="223" y="6" text="English"/>   
   <mx:List x="223" y="25" id="english" width="200" height="120" dropEnabled="true"></mx:List>   
   <mx:Label x="223" y="150" text="中文"/> 
   <mx:List x="223" y="177" id="chinese" width="200" height="120" dropEnabled="true"></mx:List> 
  </mx:Panel>
  
</mx:Application>

效果图:

 

 

 

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="400" backgroundColor="#FFFFFF"
creationComplete="initApp()" layout="absolute">
  <mx:Script>  
    <![CDATA[     
    import mx.controls.DataGrid;     
    import mx.controls.Image;     
    import mx.collections.ArrayCollection;     
    import mx.events.DragEvent;     
    import mx.managers.DragManager;     
    import mx.core.DragSource;     
    [Bindable]     
    public var total:Number=0;     
    [Bindable]     
    public var cartContents:ArrayCollection;     
    private function initApp():void{       
     this.cartContents=new ArrayCollection();
    }     
    private function dragIt(event:MouseEvent,name:String,price:Number):void{
      //CurrentTarget指定要实现拖拽事件的初始化目标       
      var dragInitiator:Image=event.currentTarget as Image;       
      //指定一个dragSource来包括拖拽过程中包含的数据的对象       
      var dragSource:DragSource=new DragSource();       
      //向对象添加数据       
      dragSource.addData(name,'name');       
      dragSource.addData(price,'price');       
      //创建一个拖拽对象的代理作为拷贝       
      var dragProxy:Image=new Image();      
      dragProxy.source=event.currentTarget.source;       
      //使用DragManager静态方法doDrag开始拖拽       
      DragManager.doDrag(dragInitiator,dragSource,event,dragProxy);     
    }     
    private function dragEnterHandler(event:DragEvent):void{
            var dropTarget:DataGrid=event.currentTarget as DataGrid;       
            if (event.dragSource.hasFormat('name') && event.dragSource.hasFormat('price')){
                      DragManager.acceptDragDrop(dropTarget);
             }     
    }     
    private function dragDropHandler(event:DragEvent):void{       
      var name:String= String(event.dragSource.dataForFormat('name'));       
      var price:Number=Number(event.dragSource.dataForFormat('price'));       
      this.cartContents.addItem({name:String(event.dragSource.dataForFormat('name'))
      ,price:String(event.dragSource.dataForFormat('price'))});       
      total+=price;     
   }   
   ]]> 
  </mx:Script> 
   <mx:Canvas x="19" y="10"> 
   <mx:Image x="23" y="35" width="64" height="64" mouseMove="dragIt(event,'Dreamweaver',499);" source="@Embed(source='../images/01.png')"/>
   <mx:Label x="41" y="107" text="499"/> 
   <mx:Image x="23" y="133" width="64" height="64" mouseMove="dragIt(event,'Fireworks',299);"  source="@Embed(source='../images/02.png')"/> 
   <mx:Label x="41" y="205" text="299"/> 
   <mx:Image x="23" y="231" width="64" height="64" mouseMove="dragIt(event,'Flash',599);" source="@Embed(source='../images/03.png')"/> 
   <mx:Label x="41" y="303" text="599"/> 
  </mx:Canvas> 
  <mx:Label x="210" y="61" text="购物篮" fontSize="12"/> 
  <mx:DataGrid x="129.5" y="102" id="cart" dataProvider="{cartContents}" dragEnter="dragEnterHandler(event);" dragDrop="dragDropHandler(event);" height="165" fontSize="12">   
  <mx:columns>     
  <mx:DataGridColumn headerText="产品" dataField="name"/>     
  <mx:DataGridColumn headerText="价格" dataField="price"/>   
  </mx:columns> 
  </mx:DataGrid> 
  <mx:Label x="186" y="292" text="总计:{total}" fontSize="12"/> 
  <mx:Label x="129.5" y="0" text="拖拽物品放入购物篮中" fontSize="12"/> 
  <mx:HRule x="5" y="20" width="390"/> 
 </mx:Application>

效果图:

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值