Maus ausserhalb des Flashfilms!?

PatrickD

Mitglied
Hallo,

wie kann ich mit AS feststellen das die Maus in einer Webseite nicht mehr über
meinen Flashfilm bewegt wird.
Der Film ist in eine Website eingebettet und recht klein (ähnlich eines Buttons).
Wenn der Besucher die Maus vom Film wegbewegt, soll also die
Animation stoppen!

Es muss aber mit dem Flash 5 Player funktionieren.

Ich habe festgestellt, das die letzten bekannten Maus-Kordinaten im Film beibehalten werden, und nicht etwa auf 0 oder "undefined" gesetzt werden.
 
onMouseOver

Eine ähnliche Lösung habe ich auch schon probiert. Allerdings ist der Platz zwischen aktiverm Bereich und Filmgrenze dan nur einige Pixel breit.
D.h. wenn der Besucher seine Maus zu schnell wegbewegt, wird das vom Flashfilm nicht mehr registriert.
Auch die Erhöhung der Bildwiederholrate bringt dann nichts mehr.

Ich denke ich muss wohl doch mit einer Zeitschleife feststellen ob die
Maus noch auf dem Film bewegt wird oder nicht.
 
Dann hast du aber das Problem, wenn der User seine Maus mal längere Zeit innerhalb des Films ruhen läßt ...

Die einzige mir bekannte Lösung ist in der Tat z.B. ein Movieclip über die gesamte Fläche mit ausreichend Abstand zum Rand, über den per hitTest bei jedem enterFrame abgefragt wird ob die Maus noch drauf ist. Oder halt andersrum - einen Rahmen am Rand des Flashfilms ziehen und prüfen ob die Maus drauf ist.
In Flash5 solltest du dabei die Framerate so hoch wie möglich stellen, da beim "schnell rausfahren" über den Filmrand hinweg, dies nicht erfasst wird. Je schneller die Framerate und je größer der Abstand zwischen Movieclip und Rand des Films umso höher die Chance, dass die Maus in dem Zwischenraum zwischen Prüfmovieclip und Filmrand noch "erwischt" wird.

Auch für FlashMX fällt mir keine andere Lösung ein außer dass du dort die Abfragefrequenz über setInterval() lösen kannst und die Framerate nicht hochschrauben mußt. Ob es für MX2004 andere Lösungen gibt weiß ich nicht.

Gruß
Rena
 
Zurück