Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-12-2011, 10:53   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2011
Beiträge: 5
MC-Button hängt sich bei gotoAndPlay auf

Hallo Leute!

Folgendes Problem:
Ich habe mehrere Buttons aus MovieClips gebaut. Ein Button besteht aus "out", "over" und "click", die jeweils mit stop() versehen sind. Diese stecken in einer 40 Frames langen Animation (schwebende Würfel), wobei auf dem letzten Frame ein gotoAndPlay() wieder auf den ersten Frame verweist.
Wenn man nun im falschen Moment mit der Maus zu schnell über einen Button drübergeht, bleibt dieser immer beim "over" stehen, und ignoriert völlig das "out".

Hier mal der Code eines Buttons:

PHP-Code:
import  flash.display.MovieClip;
import  flash.events.MouseEvent;

avatar_btn.buttonMode true;
avatar_btn.useHandCursor true;

avatar_btn.addEventListener(MouseEvent.MOUSE_OVERavatarOver)
avatar_btn.addEventListener(MouseEvent.MOUSE_OUTavatarOut)
avatar_btn.addEventListener(MouseEvent.CLICKavatarClick )

function 
avatarOver(e:MouseEvent):void
{
        
avatar_btn.gotoAndPlay(2);
}

function 
avatarOut (e:MouseEvent):void
{

        
avatar_btn.gotoAndPlay(1);
}

function 
avatarClick(e:MouseEvent):void
{
    
avatar_btn.gotoAndPlay(8);

        if (
rlj_btn.currentFrame == 8)
        {
        
rlj_btn.gotoAndPlay(1);
        }
    
    if (
artworks_btn.currentFrame == 8)
        {
        
artworks_btn.gotoAndPlay(1);
        }
        
    if (
schach_btn.currentFrame == 8)
        {
        
schach_btn.gotoAndPlay(1);
        }

                
navigateToURL(new URLRequest('avatar.html'), 'inhalt'); 

Daran sollte es ja aber nicht liegen? Das Problem muss bei dem Sprung mit dem gotoAndPlay liegen, welches dann den Code neu lädt oder ignoriert, weil sich etwa in dem Moment immer der Button aufhängt und auf dem dem letzten Frame des "over" stehen bleibt.

Weiss jemand eine Lösung?

Ich hoffe mir kann jemand helfen weil ich schon ziemlich lange an diesem Problem sitze und einfach nicht weiterkomme.

Geändert von lafsen (16-12-2011 um 10:59 Uhr)
lafsen ist offline   Mit Zitat antworten
Alt 17-12-2011, 09:34   #2 (permalink)
He! He! He!
 
Benutzerbild von DeDani
 
Registriert seit: Jul 2001
Beiträge: 2.218
versuche mal ein gotoAndStop statt des Plays.
__________________
FF-unterstützen | DeDani
DeDani ist offline   Mit Zitat antworten
Alt 17-12-2011, 13:25   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2011
Beiträge: 5
Danke für deine Antwort DeDani! Aber leider hab ich das auch schon probiert, und es hat sich nichts geändert.
Gibt doch bestimmt schon jemanden von euch, der schonmal einen selbsterstellten Button in eine Animationsschleife gesteckt hat, oder? Gibt's da eine Alternative zu meiner Version?



Bitte helft mir!

Geändert von lafsen (17-12-2011 um 18:27 Uhr)
lafsen ist offline   Mit Zitat antworten
Alt 17-12-2011, 23:03   #4 (permalink)
NCC 1701 D
 
Benutzerbild von speedjunkie
 
Registriert seit: Oct 2009
Ort: Metropolregion Hamburg
Beiträge: 586
Hey DeDani, lafsen,

@lafsen

ein paar Fragen:

wie viele Button genau?
40 Frames auf der Hauptzeitleiste? Ist Dein Flash Film generell ein loop?
Über ein und denselben Button oder egal welcher Button?
Was bedeutet Falscher Moment? Beobachtest Du den Abspielkopf?

Beim MOUSE_OUT springt der Abspielekopf einen Frame vor MOUSE_OVER was steht da in der Zeitleiste? Das verstehe ich nicht!

Gibt es noch ein bisschen mehr Quelltext?

ActionScript:
  1. avatar_btn.addEventListener(MouseEvent.MOUSE_OVER, avatarOver)
  2. avatar_btn.addEventListener(MouseEvent.MOUSE_OUT, avatarOut)
  3. avatar_btn.addEventListener(MouseEvent.CLICK, avatarClick )
  4.  
  5. function avatarOver(e:MouseEvent):void
  6. {
  7.         e.target.gotoAndPlay(2);
  8. }
  9.  
  10. function avatarOut (e:MouseEvent):void
  11. {
  12.  
  13.         e.target.gotoAndPlay(1); // <-- HIER
  14. }
  15.  
  16. function avatarClick(e:MouseEvent)
  17. {
  18.     e.target.gotoAndPlay(8);
  19.     8 == rlj_btn.currentFrame && rlj_btn.gotoAndPlay(1);
  20.     8 == artworks_btn.currentFrame && artworks_btn.gotoAndPlay(1);
  21.     8 == schach_btn.currentFrame && schach_btn.gotoAndPlay(1);
  22.     navigateToURL(new URLRequest("avatar.html"),"inhalt");
  23. }
__________________
just be Daniel
JUNK FOOD: JavaScript Core Reference
speedjunkie ist offline   Mit Zitat antworten
Alt 18-12-2011, 16:04   #5 (permalink)
Neuer User
 
Registriert seit: Dec 2011
Beiträge: 5
Hey speedjunkie!

Danke das du dich um mein Problem kümmerst!

Um dir/euch das Problem mal direkt zu zeigen habe ich mal die Seite in ihrem bisherigen Zustand hochgeladen, bitte ignoriert alles andere, es geht nur um das Flashmenü unten.

Hier: Beispiel

"Das Institut für Computer" und "Kultur" sind soweit funktionsfähig. Wenn ihr auf "Das Institut für Computer" klickt und dann mit der Maus mal flott über die Unterbuttons hin und her geht, werdet ihr feststellen das diese sich "aufhängen" und der "out"-Zustand ignoriert wird.

Falls das Menü abgeschnitten ist, zieht das Browserfenster einfach mal schmaler, das muss ich noch richten

Zu deinen Fragen:

Zitat:
wie viele Button genau?
4 Oberbuttons mit jeweils 2-4 Unterbuttons, insgesamt werden es mal 13.

Zitat:
40 Frames auf der Hauptzeitleiste? Ist Dein Flash Film generell ein loop?
Wie du sehen kannst besteht der Film aus mehreren Loops und Übergängen dazwischen. Die schwebenden Würfel am Anfang sind 1 Loop, dann kommt bei einem Klick der Übergang zum nächsten Loop mit den Unterbuttons. Klickt man auf einen anderen Oberbutton kommt wieder ein Übergang und danach der Loop mit den enstprechenden Unterbuttons usw... Die Schwebeanimationen sind je 40 Frames lang.

Zitat:
Über ein und denselben Button oder egal welcher Button?
Das passiert bei allen Buttons.

Zitat:
Was bedeutet Falscher Moment? Beobachtest Du den Abspielkopf?
Ich denke das es immer dann passiert, wenn die Animation einmal durchgelaufen ist und man in diesem Moment über einen Button geht. Genau weiss ich's nicht, dafür geht's mir zu schnell . Aber probier's mal selbst...

Zitat:
Beim MOUSE_OUT springt der Abspielekopf einen Frame vor MOUSE_OVER was steht da in der Zeitleiste? Das verstehe ich nicht!
Da ist der "out"-Zustand, welcher nur 1 Frame lang ist und mit einem stop() versehen ist (bunter Würfel). Danach kommt eine Animation (ausfahrende Fähnchen) beim "over" zwischen Frame 2 - 7, aus Frame 7 ist auch ein stop(), da ja die Fahne solange draussen sein soll bis man wieder mit dem Cursor weggeht. Auf Frame 8 ist der "click"-Zustand (weißer Würfel) ebenfalls mit einem stop() versehen.

Ich hoffe du/ihr habt jetzt nen Durchblick und bekommt einen Geistesblitz!
lafsen ist offline   Mit Zitat antworten
Alt 19-12-2011, 20:29   #6 (permalink)
NCC 1701 D
 
Benutzerbild von speedjunkie
 
Registriert seit: Oct 2009
Ort: Metropolregion Hamburg
Beiträge: 586
Ist das Auf und Ab der Loop auf der Maintimeline?

Ich würde sagen Du kannst das besser kontrollieren in dem Du ein TweenEngine verwendest und alles auf einem Frame steht und auch nur ein Frame existiert.
__________________
just be Daniel
JUNK FOOD: JavaScript Core Reference
speedjunkie ist offline   Mit Zitat antworten
Alt 20-12-2011, 13:52   #7 (permalink)
Neuer User
 
Registriert seit: Dec 2011
Beiträge: 5
Ja ist auf der Maintimeline.

Okay, werd das mal mit einem TweenEngine versuchen. Hab zwar bisher nichts mit soetwas gemacht, aber seh mal zu...
lafsen ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
button, gotoandplay, movieclip

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Flashscript hängt sich auf... DJ-M ActionScript 2 0 17-03-2010 15:52
FLVPlayback hängt sich auf... Sanibal Flash Einsteiger 2 24-11-2006 23:26
swf hängt sich auf joshua kemp Flash 8 6 19-10-2005 11:09
Flash MX hängt sich auf needlejockey Flash 4 und Flash 5 5 21-12-2002 07:28
PC hängt sich auf! stefbunny Am Rande 5 28-08-2002 01:07


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:53 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele