AS3 Projekt - Mouse Move Listener Reagieren, die Außerhalb der Anwendung
Ich bin immer ein ungewöhnliches Verhalten, dass ich kann nicht scheinen, um auf den Grund. Wenn ich diese ausführe, wenn ich mich bewege in der swf-Bereich wird es Spuren in der Regel auf der Maus verschieben. Zu erwarten.
Aber es ist die Ablaufverfolgung für das move-Ereignis aus, wenn ich auf überall auf dem Bildschirm. Wenn ich klicken und ziehen Sie die Spuren, als ob ich das verschieben in die swf-Bereich des Browsers.
Hier ist der code. Ich habe vereinfacht, es ist simpler. Nur setzen Sie diese in eine leere AS3-Projekt in Flex als "Motor" - sans-Zitate offensichtlich.
package {
import flash.display.Sprite;
import flash.events.MouseEvent;
[SWF(width='640', height='360', backgroundColor='#888888', frameRate='31')]
public class Engine extends Sprite
{
public function Engine()
{
//Add the mouse handlers
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
}
public function mouseMoveHandler(evt:MouseEvent):void
{
trace("move");
}
}
}
Als workaround habe ich hinzufügen das MOUSE_MOVE einem MOUSE_OVER und entfernen Sie Sie auf MOUSE_OUT. Aber das Verhalten scheint immer noch ziemlich ungewöhnlich, und ich würde sein Interesse zu verstehen, warum es passiert.
Kann mir jemand sagen, wie ich kann halten die Ereignisse begrenzt auf den tatsächlichen Zustand der Anwendung?
InformationsquelleAutor grey | 2009-05-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie bereits erwähnt, man kann nicht aufhören, diese Ereignisse aus den feuern. Sie werden ausgelöst, bis Sie die Maustaste loslassen.
Was Sie tun können, ist, vergleichen Sie die Koordinaten des Mouse-mit den Grenzen der Bühne und ignorieren diese außerhalb.
InformationsquelleAutor Chadwick
Wenn Sie klicken Sie in Ihrem flash-Film und ziehen Sie die Maus außerhalb des es, MOUSE_MOVE-Ereignis wird weiterhin ausgelöst, bis Sie loslassen der Maus. MOUSE_LEAVE wird nur ausgelöst, wenn Sie die Maus loslassen, außerhalb der Spieler. Dies ist, wie der Flash-Player funktioniert.
Vielleicht bin ich falsch, aber ich glaube nicht, können Sie dieses Verhalten ändern.
Sorry, kann ich nicht nachvollziehen, die dieses Verhalten mit Ihrem code. Kannst du mehr details wie der FP-version, OS, ...
Natürlich, sorry für die Verzögerung in der Reaktion. Flash-Player-Version - Debug, MAC 10,0,22,87
InformationsquelleAutor Florian F
Ok, Das ist ein bekannter bug, das passiert nur mit Mac.
Gibt es ein Update hier :
http://www.visible-form.com/blog/transformmanager-fix-for-mac-firefox/
InformationsquelleAutor Florian F