Zurück   Flashforum > Flash > ActionScript > ActionScript 2

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-05-2009, 20:38   #1 (permalink)
Neuer User
 
Registriert seit: May 2009
Beiträge: 5
Button onRelease verliert Funktion nach Restart des Movies

Hallo liebe Helfer

Ich habe ein Flash - ein "Count down" - mit 3 Frames:

1. Frame initialisiert Variablen und Funktionen
2. Frame startet Film und Sound (separat)
3. Frame ist ein "Übergangsframe" mit gotoAndPlay(1), um den Movie wieder neu zu starten (weils nicht geht von Frame 1 zu Frame 1, falls der Button da geklickt wird)

Im ersten Frame definiere ich die Funktion für 3 Buttons, z.B.:

// Funktioniert beim ersten mal, geht über Frame 3 zu Frame 1 (gotoAndPlay):
btn_start.onRelease = function() {
restartMovie();
};

Das Problem ist, dass die Funktion onRelease des Buttons beim ersten Durchlauf in allen Frames da ist und funktioniert. Sobald ich jedoch den Movie restarte (ob automatisch per Loop oder per Button Klick, ist egal), ist der Button nicht mehr klickbar.

Bereits probierte Varianten:
- on (release) { im AS dem Button hinterlegt - genau das selbe
- Jeder Frame separat behandelt (Keyframes mit erneutem Definieren der onRelease-Funktion) - genau das selbe
- Sogar mit einem Formular-Button (Komponente) - genau das selbe

Alles funktioniert nur beim ersten Durchlauf, nachher nicht mehr.

Ich wäre super glücklich, Hilfe zu erhalten. Jetzt schon vielen Dank!

Lieber Gruss
Hildegard
MeMe ist offline   Mit Zitat antworten
Alt 14-05-2009, 21:09   #2 (permalink)
.
 
Registriert seit: May 2003
Ort: bayern
Beiträge: 1.117
haste mal ne kleine fla zum gucken, oder was script?
__________________
[mooseMash]
mooseMash ist offline   Mit Zitat antworten
Alt 14-05-2009, 22:21   #3 (permalink)
Neuer User
 
Registriert seit: May 2009
Beiträge: 5
Zitat:
Zitat von mooseMash Beitrag anzeigen
haste mal ne kleine fla zum gucken, oder was script?
Vielen Dank für Deine Antwort.

OK, hier ist das FLA, 11,8MB (ohne FLV, das im Frame 2 zum Zuge kommt):
http://www.mediamerger.ch/transfer/_Count-down_v1-0.fla

Ich habe inzwischen eine Lösung mit Keyboard-Keys gefunden, aber das ist nicht, was ich will. So wäre ich froh um eine "Button-Lösung".

Lieber Gruss
Hildegard
MeMe ist offline   Mit Zitat antworten
Alt 15-05-2009, 10:28   #4 (permalink)
.
 
Registriert seit: May 2003
Ort: bayern
Beiträge: 1.117
dein script verdient die note "erstaunlich".

jedesmal wenn du in frame 1 kommst erzeugst du zwei neue textfelder in neuen ebenen, das macht keinen sinn.

zudem haben diese textfelder enorme ausmaße, die liegen dann über den buttons, da kann dann kein event-handler mehr greifen, das siehst du daran das du nachdem du auf btn_start geklickt hast beim rollover den textcursor zu sehen bekommst.
m.a.W. das neu erzeugte textfeld liegt über dem button.
stell mal zunächst die border des textfeldes auf true, dann kannst du dessen ausmaße sehen.
PHP-Code:
fld_counter.border true
PHP-Code:

this
.createTextField("fld_counter"this.getNextHighestDepth(), 250195300130);
fld_counter.selectable false;
fld_counter.border false;
fld_counter.wordWrap false;
fld_counter.antiAliasType 'normal';
fld_counter.setNewTextFormat(counter_format); 
darüber hinaus solltest du dir gedanken über den grundsätlzichen aufbau machen, wenn du in frame 1 jedesmal neue textfelder erstellen willst, dann setze sie besser auf die gleiche ebene, so kommst du nicht in verlegenheit andere dinge zu überschreiben.
__________________
[mooseMash]
mooseMash ist offline   Mit Zitat antworten
Alt 15-05-2009, 12:58   #5 (permalink)
Neuer User
 
Registriert seit: May 2009
Beiträge: 5
Hallo mooseMash

Oje, das ist fast beschämend. Vielen Dank, ich sehe meinen Fehler. Hat Dein Ausdruck "erstaunlich" auch noch eine positive Komponente?

Was würdest Du in diesem Fall empfehlen: Einen neuen Frame am Anfang einfügen, der all dieses Zeug enthält und diesen danach nie mehr ansteuern, sondern nur noch die anderen zu "benutzen"? Würde das dann auch für den Film und den Sound in Frame 2 gelten?

Vielleicht nehme ich nach dem kleinen Finger gleich Deine ganze Hand, aber vielleicht hast Du ja Lust auf konzeptionelle Problemlösung.

Nochmals herzlichen Dank.
MeMe ist offline   Mit Zitat antworten
Alt 15-05-2009, 13:48   #6 (permalink)
.
 
Registriert seit: May 2003
Ort: bayern
Beiträge: 1.117
"erstaunlich" hat immer gehoerigen positiven anteil, sonst hiesse es "niederschmetternd".

ich bin nicht ganz durchgestiegen warum du da mehrere frames hast, grundsaetzlich empfehle ich immer moeglichst in einem frame zu arbeiten.

man erspart sich viel unnoetigen aerger.
__________________
[mooseMash]
mooseMash ist offline   Mit Zitat antworten
Alt 15-05-2009, 14:38   #7 (permalink)
Neuer User
 
Registriert seit: May 2009
Beiträge: 5
Vielen Dank, Du hast mir sehr geholfen.

Lieber Gruss
MeMe ist offline   Mit Zitat antworten
Alt 15-05-2009, 14:53   #8 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Und wenn schon mehrere frames, dann den zweiten frei lassen, dann darein springen zum neustarten!
Aber wie "mooseMash" schon gesagt hat, alles ins erste Frame wäre am besten.
Alles was mit dem Filmabspielen zu tun hat, in ne Funky beamen, und die zum Neustart wieder aufrufen.
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 18-05-2009, 21:22   #9 (permalink)
Neuer User
 
Registriert seit: May 2009
Beiträge: 5
Hallo RustyCake

Vielen Dank, habe es jetzt so - oder ähnlich - gemacht: alle Vars und Funktionen in 1. Frame und in den restlichen Frames 'rum hüpfen (obwohl ich den Ausdruck "in ne Funky beamen" nicht 100% interpretieren kann ;o)

Lieber Gruss
MeMe ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
button, funktion, restart

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



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:29 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele