Hi, Thanks for your reply.
Now it's working. But still have a problem. I can't use clear(), because it deletes all previously drawn arrows. Any other way to do this with out deleting other arrows which are on the canvas? Thanks, ------------------------------------------------ <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" backgroundColor="#FFFFFF"> <mx:Script> <![CDATA[ var isPointerStarted = false; var bx:Number; var by:Number; function mouseMoveHandler(event) { if (!isPointerStarted) return; ★mycanvas1.clear();★ mycanvas1.lineStyle(1, 0xFF0000, 30); mycanvas1.createChild(drawingArrow()); updateAfterEvent(); } function pointerStart() { if (isPointerStarted) return; isPointerStarted = true; bx = mycanvas1.mouseX; by = mycanvas1.mouseY; } function pointerReleased() { if (!isPointerStarted) return; mycanvas1.lineStyle(2.5, 0x666666, 100); mycanvas1.createChild(drawingArrow()); isPointerStarted = false; } function drawingArrow(){ var w = mycanvas1.mouseX - bx; var h = mycanvas1.mouseY - by; var l = Math.sqrt(w * w + h * h); var size=8; var sharpness=0.5; var s = Math.sin(sharpness); var c = Math.cos(sharpness); if(l>0 ){ w *= size / l; h *= size / l; mycanvas1.moveTo(bx,by); mycanvas1.lineTo(mycanvas1.mouseX, mycanvas1.mouseY); mycanvas1.lineTo(mycanvas1.mouseX - w * c - s * h, mycanvas1.mouseY + w * s - h * c); mycanvas1.moveTo(mycanvas1.mouseX, mycanvas1.mouseY); mycanvas1.lineTo(mycanvas1.mouseX - w * c + s * h, mycanvas1.mouseY - w * s - h * c); } } ]]> </mx:Script> <mx:Canvas id="mycanvas1" mouseDown="pointerStart()" mouseUpSomewhere="pointerReleased()" width="700" height="400" borderStyle="solid" backgroundColor="#DDEEFF" backgroundAlpha="0" mouseMove="mouseMoveHandler(event)"> </mx:Canvas> </mx:Application> ------------------------------------------------- > You need to call your draw function via mouseMove, but have the drawing algo > clear() each time. Additionally, add an updateAfterEvent() at the end of > your function since mouseMoves can happen faster than the screen can redraw. > The mouseUp function will then call the same function, only once. > > ----- Original Message ----- > From: "Tracy Spratt" <[EMAIL PROTECTED]> > To: <flexcoders@yahoogroups.com> > Sent: Wednesday, September 21, 2005 12:34 PM > Subject: RE: [flexcoders] Question about "mouseMove" > > > I am not sure how to implement this or how this would affect your > performance, but you probably need to use a doLater() to let the screen > update. > > Tracy > > -----Original Message----- > From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On > Behalf Of Prasad Dhananjaya > Sent: Wednesday, September 21, 2005 7:21 AM > To: FlexML > Subject: [flexcoders] Question about "mouseMove" > > Hi, > > I have a small question about mouseMove action. > > Below code draws an arrow between mouseDown point and mouseUp point. > It works well. But arrow displays only after mouseUp event.I want to > display arrow during moving of mouse (before I do mouseUp). > I think I have to add "something" to mouseMoveHandler(). > But didn't know what? Can someone tell me how can I do this? > > Thanks, > ------------------------ Yahoo! Groups Sponsor --------------------~--> Get Bzzzy! (real tools to help you find a job). Welcome to the Sweet Life. http://us.click.yahoo.com/A77XvD/vlQLAA/TtwFAA/nhFolB/TM --------------------------------------------------------------------~-> -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/