Hi, can someone help me with the drag and drop problem I have? everytime I drop the image, it seems like random move few pix away from the dropped location, I been debug this problem for a while, can't find out why it happens. here is my code, thanks ahead!
---------------------------------------------------------------------- <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal" viewSourceURL="srcview/index.html"> <mx:Script> <![CDATA[ import mx.controls.Image import mx.core.DragSource; import mx.core.UIComponent import mx.events.DragEvent import mx.managers.DragManager [Bindable] public var xyOff : String = ""; private function doDragEnter(event:DragEvent):void { DragManager.acceptDragDrop(UIComponent(event.target)); } private function doDragDrop(event:DragEvent):void { var img:Image; if (event.dragInitiator.parent == dropCanvas) img = event.dragInitiator as Image; else { img = new Image(); img.source = (event.dragInitiator as Image).source; img.addEventListener(MouseEvent.MOUSE_DOWN, doDragStart); dropCanvas.addChild(img); } img.x = event.localX - (event.dragSource.dataForFormat("localX") as Number); img.y = event.localY - (event.dragSource.dataForFormat("localY") as Number); img.visible = true; xyOff += "\nex=" + event.localX +"\ney=" + event.localY; xyOff += "\nex2=" + (event.dragSource.dataForFormat("localX") as Number) + "\ney2=" + (event.dragSource.dataForFormat("localY") as Number); } private function doDragStart(event:MouseEvent):void { var dragInitiator:Image = event.currentTarget as Image; var dragSource:DragSource = new DragSource(); var dragProxy:Image = new Image(); dragProxy.source = dragInitiator.source; dragProxy.width = dragInitiator.width; dragProxy.height= dragInitiator.height; dragSource.addData(event.localX, "localX"); dragSource.addData(event.localY, "localY"); dragInitiator.visible = false; dragProxy.visible = true; DragManager.doDrag(dragInitiator, dragSource, event, dragProxy,0,0,1,true); } ]]> </mx:Script> <mx:VBox> <mx:Image source="@Embed('assets/trash_can.png')" mouseDown="doDragStart(event);" id="img" /> <mx:TextArea height="100%" width="59" text="{xyOff}"/> </mx:VBox> <mx:Canvas id="dropCanvas" width="100%" height="100%" borderColor="#996633" dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" borderStyle="solid" cornerRadius="20" borderThickness="1" backgroundColor="#336699"/> </mx:Application> ---------------------------------------------------------------------- Willy ---------------------------------------------------------------------- 6 X 9 = 42 Q: How do you spell "google"? A: Why don't you google it? ----------------------------------------------------------------------