OnClipEvent in MX

rAvEnXXL

Mitglied
Hallo,
ich lese gerdade ein Buch zu AS in Flash5. Dort wird sehr oft der Befehl
onClipEvent (event) {}
verwendet.
Leider funktioniert der nicht in FlashMX?!
Es wird mir nur dieser Fehler ausgegeben:

**Fehler** Szene=Szene 1, Ebene=Ebene 1, Bild=1:Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
onClipEvent (mouseMove)

Wie muss ich also onClipEvent anwenden, dass er auch in MX funktioniert?
 
Hi,

der Befehl sollte auch unter MX gehen, obwohl Du auch einfach schreiben kannst:
PHP:
on(Event) {}

Die Fehlermeldung lässt darauf schließen, dass es sich eben nicht um eine MovieClip-Instanz handelt.
Wo hast Du den Code denn reingeschrieben?

Tipp: Auch Objekte vom Typ "Grafik" können als MovieClips instanziert werden!

Gruß

P.S.: Meines Wissens gibt es in Flash das Ereignis "MouseMove" nicht.
Verwende lieber "rollOver".
 
Zuletzt bearbeitet:
Hab "mouseMove" auch aus dem AS Buch (aber wie gesagt für Flash5).
Gerade so nebenbei, wie muss ich das dann machen?
Habs einfach in den ersten Frame eingefügt:
PHP:
onClipEvent (rollOver)
{
Mouse.hide();
	}

Oder muss ich onClipEvent auf einen MC anwenden?
PHP:
block.onClipEvent (rollOver)
{
Mouse.hide();
	}
EDIT: Geht doch nicht, dann kommt der Fehler:
**Fehler** Szene=Szene 1, Ebene=Ebene 1, Bild=1:Zeile 1: Nach '.'-Operator wurde ein Feld erwartet.
block.onClipEvent (rollOver)
Ist mit Feld ein Textfeld gemeint?
 
Hi,

weder noch.

Wenn Du das Script einfach in das erste BIld der Hauptzeitleiste einfügst, weiß Flash ja nicht, auf welchen Clip sich das Ereignis beziehen soll.

"On"-Handler funktionieren auch nicht, wenn Du den Clip mit Punktsyntax ansprichst.

Das Script kommt hier entweder:

a) in die Instanz.
Markiere dazu den MovieClip (Button oder was auch immer) auf der Bühne mit der Maus und öffne nun den AS-Editor. Oben sollte etwa folgendes stehen:
"Aktionen für [Instanzname] (Symbolname)"

Nun kannst Du den Handler samt Funktion einfügen.

b)
in das Objekt selber.

Wähle hierzu das Objekt in der Bibliothek aus (Doppelklick) und füge folgendes ein:
PHP:
this.onRollOver = function() {
  Mouse.hide();
}

Du kannst das Objekt auch durch Doppelklick auf die Instanz öffnen.

Gruß

P.S.: Ich muss mich korrigieren: das Ereignis "MouseMove" existiert tatsächlich! :)
 
Zurück