Things I learned today

Mit Flash Mausklicks registrieren und verarbeiten

Ich bin gerade dabei mich in Flash bzw. actionscript3 einzuarbeiten und erstelle als Übungsaufgabe einen kleinen Match-3 Klon. Eine der ersten Dinge die ich dafür lernen musste war, wie Flash Mausklicks verarbeitet. Zum Glück ist das in Flash eigentlich ganz einfach. Ein nützliches Tutorial zum Thema Mouse Event ist: Understanding the AS3 Event Flow.
Zuerst muss man einen event listener an ein Objekt hängen, dass die Mausklicks empfangen soll. Das geht über einen der folgenden Aufrufe:

mySprite.addEventListener(MouseEvent.CLICK, click_event);
mySprite.addEventListener(MouseEvent.MOUSE_DOWN,mouse_down);
mySprite.addEventListener(MouseEvent.MOUSE_UP, mouse_up);			
mySprite.addEventListener(MouseEvent.DOUBLE_CLICK, doubleClick);

Das sind die vier events die ich für mein Spiel brauchte. Es gibt aber noch weiter mouse events, wie zum Beispiel: MOUSE_MOVE, MOUSE_OUT, MOUSE_OVER, MOUSE_UP, MOUSE_WHEEL, ROLL_OUT und ROLL_OVER. Durch den Aufruf von addEventListener wird das im ersten Parameter definierte mouse event mit dem Objekt mySprite verknüpft, so dass dieses Objekt nun die spezifizierten mouse events empfängt. Der zweite Parameter gibt den Funktionsnamen an, der den mouse event verarbeiten soll.

Eine solche Funktion kann dann zum Beispiel so aussehen:

private function mouse_down(e:MouseEvent):void {
    trace("Linker Maus Button wurde bei der X-Koordinate: " + mouseX + " und Y-Koordinate: " + mouseY + " gedrückt.");
}
private function mouse_up(e:MouseEvent):void {
    trace("Linker Maus Button wurde bei der X-Koordinate: " + mouseX + " und Y-Koordinate: " + mouseY + " wieder losgelassen.");
}
private function click_event(e:MouseEvent):void {
    trace("Links-Klick bei der X-Koordinate: " + mouseX + " und Y-Koordinate: " + mouseY);
}
private function doubleClick(e:MouseEvent):void {
    trace("Doppel-Klick bei der X: " + mouseX + " und Y: " + mouseY);
}

Das wars! Und schon kann man anfangen mit den Maus events zu arbeiten.
Was man mit Maus Events noch so alles machen kann ist am besten in der offiziellen Doku nachzulesen.

Post a Comment

Your email is kept private. Required fields are marked *