非默认拖动组件如何实现拖动?
来源:互联网 发布:朗朗平板钢琴软件 编辑:程序博客网 时间:2024/06/10 07:38
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Script>
<![CDATA[
import mx.events.DragEvent;
import mx.managers.DragManager;
import mx.core.DragSource;
import mx.collections.ArrayCollection;
import mx.core.IUIComponent;
[Bindable]
private var myListDP:ArrayCollection=new ArrayCollection();
//启动拖动事件
private function dragIt(initiator:Label,dsData:String,event:MouseEvent,format:String):void
{
//拖动的数据源
var ds:DragSource = new DragSource();
//添加拖动过程中的数据,以及确定格式
ds.addData(dsData,format);
//启动拖动事件
DragManager.doDrag(initiator,ds,event);
}
//拖动发生时候
private function doDragEnter(event:DragEvent,format:String):void
{
//判断格式是否一致
if(event.dragSource.hasFormat(format)){
//接受该拖动组件
DragManager.acceptDragDrop(IUIComponent(event.target));
}
}
//拖动事件结束
private function doDragDrop(event:DragEvent,format:String):void
{
//
var myLabelData:Object = new Object();
//接受指定格式的数据
myLabelData = event.dragSource.dataForFormat(format);
myList.dataProvider.addItem(myLabelData);
}
]]>
</mx:Script>
<mx:Label id="myLabel"
text="Drag me"
mouseDown="dragIt(myLabel,'My data here',event,'myFormat')"/>
<mx:Spacer width="20"/>
<mx:List id="myList"
width="200"
dataProvider="{myListDP}"
dragEnter="doDragEnter(event,'myFormat')"
dragDrop="doDragDrop(event,'myFormat')"/>
</mx:Application>
- 非默认拖动组件如何实现拖动?
- ToolStrip如何实现拖动
- 如何实现拖动文件
- 如何实现拖动GUI
- 如何实现在对话框的非标题栏处拖动对话框
- 如何让 Nestable 组件不能拖动
- android之实现SeekBar拖动组件
- easyui Draggable组件实现拖动效果
- 拖动
- 拖动
- 拖动
- 拖动
- 制作组件拖动
- 组件拖动显示
- Android 拖动组件
- Dragdealer拖动组件
- 如何实现网页上拖动图片
- 请教如何实现多选并拖动
- 武林高手之所以成为武林高手
- 制作图形组合框
- Linux 小问题&小技巧
- Illuminated by blindness
- 百问
- 非默认拖动组件如何实现拖动?
- 给华育国际的学员分讲了一堂课:如何做技术
- VC中使用系统提供的线程池(Thread Pooling)
- VC获得mp3文件信息(目前仅ID3V1)
- 原来sscanf还可以和正则表达式结合起来
- (转)跟我一起写MakeFile
- 什么是ARX
- 2.2.1 核心接口
- 2.2.2 Callback接口