Search code examples
actionscript-3apache-flexflex4.5

Flex Local Mouse Position


here is my sample code

  <canvas id="myCanvas" x="200" y="200" height="300" width="500"  mouseOver="onOver" />
private function onOver(event:MouseEvent):void
{
trace(mouseX,mouseY);
}

its give me result respect to my application MouseX and MouseY but i want respect to my Canvas.please help me any one


Solution

  • try this it may help you

      <?xml version="1.0" encoding="utf-8"?>
    <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Script>
    <![CDATA[
     import mx.core.Application;
    
    private function click(evt:MouseEvent):void
     {
     var pt:Point = new Point( this.butt.x, this.butt.y );
     var global:Point = Application.application.localToGlobal( pt );
    
    trace( "local_x: " + pt.x + " x " + pt.y );
     trace( "global_x: " + global.x + " x " + global.y );
    
    var p:Point = stage.nativeWindow.globalToScreen(new Point(this.butt.x, this.butt.y));
    
     trace(p.x + " x " + p.y);
     var na:NativeWindow = new NativeWindow(new NativeWindowInitOptions());
      na.visible = true;
     na.width = 100;
      na.height = 100;
     na.x = p.x;
     na.y = p.y;
      na.activate();
    
    }
    ]]>
    </mx:Script>
    
    
    <mx:Button x="10" y="10" id="butt" label="Click" click="click(event)" />
    
     </mx:WindowedApplication>