Position der Maus auf dem Bildschirm in flex

Ich versuche erhalten Sie die aktuellen Maus-Koordinaten auf dem Bildschirm, so dass ich können Sie ein Natives Fenster erstellen in dieser position, aber ich nicht scheinen, um in der Lage sein, den richtigen Weg zu finden, diese richtig zu tun.

Ich habe versucht, verschiedene Dinge, die am nächsten Sache, die ich im moment haben ist:

this.contentMouseX and this.contentMouseY

Das gibt mir die Koords auf die aktuelle Phase und das ist gut, dann füge ich an, dass die:

NativeApplication.nativeApplication.activeWindow.x and activeWindow.y

Die in der Nähe ist, aber diese nicht berücksichtigt werden in der Titelleiste der Anwendung.

Muss es sein, ein leichter und direkter Weg, dies zu tun, ich bin sicher, kann jemand Rat geben denn ich nicht finden bei google?

Habe ich versucht localToGlobal, das funktioniert nicht, es scheint, dass 'global' bedeutet, dass innerhalb der Anwendung und nicht global auf dem Bildschirm, die von keinem nutzen für mich. Hier ist ein Beispiel, das zeigt den Fehler...

<?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.contentMouseX, this.contentMouseY );
                var global:Point = Application.application.localToGlobal( pt );

                trace( "local_x: " + pt.x + " x " + pt.y );
                trace( "global_x: " + global.x + " x " + global.y );
            }
        ]]>
    </mx:Script>

    <mx:HBox horizontalAlign="center" width="100%">
        <mx:Button id="butt" label="Click" click="click(event)" />
    </mx:HBox>
</mx:WindowedApplication>

InformationsquelleAutor Dan | 2009-05-29

Schreibe einen Kommentar