- 1
- 0
- 约6.95千字
- 约 8页
- 2018-03-13 发布于河南
- 举报
Flex拖动实现方法
在交互性要求较高的系统中,拖动是一种比较常用的技术,例如,我们经常用到权限定制、数据导入导出定制等功能,这种情况下,一般是目标数据集合已经确定,用户需要从已有的集合中选择条目,使用拖动完成实现起来比较直观,友好;有些场景下需要允许容器内的元素能够自由拖动,例如一些图形设计工具。在Flex中,它本身就提供了很多支持拖动的特性,很多情况下,这些特性能够简化我们的开发,但是也有一些情况是需要我们自定义实现的。本文介绍了三种flex中进行拖动的方法。
方法一:List中数据的拖动
?xml version=1.0 encoding=utf-8?
mx:Application xmlns:mx=/2006/mxml layout=absolute
????mx:List dragEnabled=true width=162 labelField=Name
????????mx:Array
????????????mx:Object Name=Item a/
????????????mx:Object Name=Item b/
????????????mx:Object Name=Item c/
????????/mx:Array
????/mx:List
????mx:List dropEnabled=true x=196 y=0 width=171 labelField=Name
????/mx:List
/mx:Application
通过指定List的dragEnabled=true来允许List控件数据支持拖动,指定dropEnabled=true来允许List控件支持接受拖动数据。
方法二:容器中控件的拖动
这种方式下控件的拖动有两种方法,一种是利用Flex自身的实现,一种是使用自定义的实现。对于Flex内的所有可视控件,都支持startDrag()和stopDrag()方法,我们通过定制相应的事件即可完成拖动的操作。例如:
?xml version=1.0 encoding=utf-8?
mx:Application xmlns:mx=/2006/mxml layout=absolute
mx:Script
????![CDATA[
????????import mx.core.UIComponent;
????????private function start(e:MouseEvent):void
????????{
????????????var component:UIComponent=e.currentTarget as UIComponent
????????????component.startDrag();
????????}
????????private function stop(e:MouseEvent):void
????????{
????????????var component:UIComponent=e.currentTarget as UIComponent
????????????component.stopDrag();
????????}
????????
????]]
/mx:Script
????mx:Canvas x=0 y=0 width=100% height=100%
????????mx:Button x=237 y=69 label=Button mouseDown=start(event) mouseUp=stop(event)/
????????mx:CheckBox x=424 y=49 label=Checkbox mouseDown=start(event) mouseUp=stop(event)/
????????mx:Image x=344 y=138 mouseDown=start(event) mouseUp=stop(event)/
????????mx:Label x=267 y=233 text=Label mouseDown=start(event) mouseUp=stop(event)/
????????mx:TextInput x=412 y=196 mouseDown=start(event) mouseUp=stop(event)/
????/mx:Canvas
/mx:Application
第二种方法就是自定义拖动的实现,主要的原理就是:在控件mouseDown之后,给所处的container注册mouseMove和mouseUp事件及处理函数;mouseMove的时候计算鼠标移动的值,然后将控件坐标做相应的改变,mouseUp的时候移除mo
您可能关注的文档
- 郭岭小学安全自查总结.doc
- 2011太平鸟商品企划.doc
- 信用评估评分表.doc
- Interphonic5.0语音合成系统安装说明.doc
- 英语口语模仿练习时的原则.doc
- 二元一次方程组的题目.doc
- 砼施工中关于配合比应用的注意事项.doc
- 项目部安全事故抢救应急预案.doc
- 黄冈高中2010届高三化学阶段测试卷.doc
- MARC并行计算安装说明.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)