flex - How to handle D-n-D to a Sprite? -


I have to find out when a user will drag-an-drop an object into a sprite. Here is a sample app that shows this issue. This never goes to the warning:

tks.

  & lt ;? Xml version = "1.0" encoding = "UTF-8"? & Gt; & Lt; S: Application xmlns: fx = "http://ns.adobe.com/mxml/2009" xmlns: s = "library: //ns.adobe.com/flex/spark" xmlns: mx = "library: // Ns.adobe.com/flex/mx "creationComplete =" ini (events) "& gt; & Lt; S: layout & gt; & Lt; S: Vertical layout / & gt; & Lt; / S: Layout & gt; & Lt; Fx: script & gt; & Lt ;! [CDATA [import mx.controls.Alert; Import mx.controls.Image; Import mx.core.DragSource; Import mx.core.IUIC component; Import mx.core.UIComponent; Import mx.effects.effectClasses.AddRemoveEffectTargetFilter; Import mx.events.DragEvent; Import mx.events.FlexEvent; Import mx.graphics.ImageSnapshot; Import mx.managers.DragManager; Private Wearer Sprite: Sprite; Private Vir Uiref: UIComponent = New UIComponent () ;; Protected function INI (event: FlexEvent): zero {uiref = new UIComponent (); Uiref.percentWidth = 100; Uiref.percentHeight = 100; Holder.Adlement (Euref); Phantom = new Sprite (); Sprite.graphics.beginFill (0xFFFF00); Sprite.graphics.drawRect (0, 0, 300, 300); Sprite.width = 300; Sprite.height = 300; Sprite.addEventListener (DragEvent.DRAG_ENTER, dragEnterHandler, False, 0, true); Sprite.addEventListener (DragEvent.DRAG_EXIT, dragExitHandler, incorrect, 0, true); Sprite.addEventListener (DragEvent.DRAG_DROP, dragDropHandler, incorrect, 0, true); Sprite.addEventListener (MouseEvent.CLICK, clickhandler, wrong, 0, true); Uiref.addChild (Phantom); } Private Function dragEnterHandler (Event: DragEvent): Zero {trace ('dragenthandler' + event. Type + '.....'); If (event.dragSource.hasFormat ('xxx')) {trace ('swredd drop'); DragManager.acceptDragDrop (event.startTarget.parent as IUIComponent); }} Personal Function dragExitHandler (Event: DragEvent): Zero {trace ('dragexthandler' + event. Type + '------'); } Private Functions dragDropHandler (Event: DragEvent): Zero {Trace ('Dragfarhandler' + Event. Type '' !!!!! '); Alert.show ('dragDropHandler'); } Personal Work doDrag (Event: Mouse Event): Zero {var d: Object = New Object (); Var Dragsource: DragSource = New Dragosource (); DragSource.addData (d, 'xxx'); Var BM: bitmap = new bitmap (ImageSnapshot.captureBitmapData (BTN)); Var DragProx: image = new image (); DragProxy.source = bm; DragManager.doDrag (This, Dragosource, Event, DragProx, 0, - (Event Local + 20), 0.4); } Private Function Clickhandler (Event: Mouse Event): Zero {trace ('clickhandler ------'); }] & Gt; & Lt; / Fx: script & gt; & Lt; S: Button label = "drag me" mouseDown = "dodg (event)" id = "btn" /> & Lt; S: Border Container ID = "Holder" width = "300" height = "300" minhite = "20" border color = "# 515151" & gt; & Lt; / S: BorderContainer & gt; & Lt; / S: Applications & gt;  


Comments