zoukankan      html  css  js  c++  java
  • Flex_拖放控件概要

    今天学习了一下Flex控件的拖拽功能,在这里和大家分享下,虽然简单,但对于初学者还是挺有帮助的。

    所有 Flex 组件都支持拖放操作。Flex 为 List、Tree 和 DataGrid 控件的拖放操作提供了附加支持, 提供了附加支持的控件实现拖拽非常简单,这些都是Flex底层为我们封装好的,只要在事件源中添加dragEnable="true"属性,然后在目标控件中添加dropEnabled="true"属性就可以了,剩下的就是Flex底层的工作了。

    如果逻辑复杂的时候,需要我们就要用到mx.core.DragSource类来封装拖拽式需要传递的数据,然后用mx.managers.DragManager类来进行拖放的操作。

    具体步骤如下

    1. 在事件源中添加mouseDown事件,并向处理函数中传递DragSource和DragManager要用到的数据。主要数据查看下一步便可知道
    2. 在mouseDown的处理函数中new 一个DragSource对象,调用addData方法把要传递的数据和数据格式添加到对象中,然后调用DragManager的doDrag方法,开始拖拽操作。具体参数参看Adobe的官方文档.
    3. 在目标控件中添加dragEnter事件,在处理函数中根据接收到的数据格式,判断是否要进行接收,如下:
      //接受拖放数据
                     if(e.dragSource.hasFormat(format))
                          DragManager.acceptDragDrop(e.target as IUIComponent);
    4. 在目标控件中添加dragDrop事件,在处理函数中得到事件源传过来的数据,并进行自定义的逻辑操作.

    参考文章:Flex 拖拽范例

    一颗平常心,踏踏实实,平静对待一切
  • 相关阅读:
    华东交通大学2017年ACM双基程序设计大赛题解
    hdu2010(dfs+剪枝)
    欧拉函数phic以及超大数的快速幂
    想了一天的题目QAQ 毛线数列的最值
    记一下STL的一个题
    hdu1877进制转换
    hdu1002大数相加
    hdu1576逆元的一道水题
    Courses
    CodeForce-813B The Golden Age(数学+枚举)
  • 原文地址:https://www.cnblogs.com/hanyuan/p/2860070.html
Copyright © 2011-2022 走看看