flex實現拖放功能

2021-05-04 04:39:37 字數 1346 閱讀 9129

import mx.core.bitmapasset;

import mx.core.dragsource;

import mx.events.dragevent;

import mx.managers.dragmanager;

private var xoffset:number;

private var yoffset:number;

private static const format:string="box";

//dragmanager 類用於管理在你的程式裡執行的拖拽操作。當乙個拖拽操作被初始化,拖拽源

//(drag source)通過靜態方法dodrag 增加到dragmanager。被稱為釋放目標(drop target)

//的元件了註冊事件***,從而監聽由dragmanager 發出的事件。它們接受dragmanager

//上可用的資料來源。

//當例項發出mousedown 事件時,mousedownhandler 方法被呼叫並且拖拽源資料被

//增加到dragmanager。dragmanager.dodrag 方法初始乙個拖拽操作,需要至少三個引數:拖

//拽初始條目的引用, 乙個mx.core.dragsource 物件和呼叫事件處理器的

//flash.events.mouseevent 物件。該方法還包括與釋放操作相關的滑鼠資訊。拖拽期間預設

//的被渲染影象是乙個具有透明度的矩形。你可以通過dodrag 方法改變這幅影象(也被稱為

//拖拽**),但在這個例子裡使用了預設的引數值。

private function mousedownhandler(evt:mouseevent):void

//canvas 元件是由box 元件初始的拖拽動作的乙個釋放目標。它為dragmanager 發出的

//dragenter 和dragdrop 事件指派事件處理器。dragmanager 物件的靜態方法acceptdragdrop

//檢查drageventhandler 方法,拖拽源資料格式,dodrag 方法裡的原始集合,以啟用拖拽動

//作。acceptdragdrop 方法所需的引數是將要響應拖拽事件的釋放目標(drag target)。程

//序的drophandler 方法響應釋放動作(drop action)並且處理這個移動的初始器(在這個

//例子裡是box 元件)的位置,其位置根據滑鼠釋放時指標的位置確定。

private function dragenterhandler(evt:dragevent):void

}private function drophandler(evt:dragevent):void

]]-->

flex3中實現拖放

在flex3中實現拖放有兩種三種方法 一 使用dragenabled 二 使用startdrag與stopdrag 三 使用dragmanager。第一種,這是區域性的,對於部分flex元件如tree等,可以直接設定其dragenabled屬性為true。第二種,也很簡單,且比較通用。主要 如下 p...

使用VB實現OLE拖放功能

在窗體中新增乙個image控制項,在它的imgdrop oledragdrop過程中新增如下 private sub imgdrop oledragdrop data as dataobject,effect as long,button as integer,shift as integer,x ...

用 QT實現拖放(drag drop)功能

qt的 qdrag 和 qdrop功能在qt的 puzzle 示例中有介紹。但是那個介紹是以qlistwidget為基礎的。本文以qwidget為基礎,介紹如何實現拖放。拖放可以用qstring作為資訊載體,也可以使用html等型別。本文採用qbytearray。qbytearray允許程式設計師使...