Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 15-01-2008, 10:02   #1 (permalink)
Rock'n'Bass
 
Benutzerbild von <sVkVmVit>
 
Registriert seit: Feb 2006
Ort: Hamburg
Beiträge: 202
Question setInterval zählt nur beim ersten mal.. ??

Hi!

Habe auf dem ersten Schlüsselbild meinen ganzen Code. Habe hier mal einfach die relevanten Passagen rausgenommen, um das Problem zu erklären.
Also ich definiere eine Funktion, die etwas tut - in diesem Fall die Variable "sekunden" hochzählt. Danach erstell ich einen Interval, der jede Sekunde diese Funktion aufrufen soll, bis "sekunden" den Wert 10 erreicht hat. Später im Code - innerhalb einer onKeyDown-Funktion - soll dann der Vorgang erneut losgehen, also es soll wieder "sekunden" von 0 bis 10 hochgezählt werden.
Doch in diesem Fall passiert nichts. Hab's mit trace() übeprüft und er zählt nicht mehr... was mache ich falsch?

PS: Es ist dringend, is für nen Kunden und muss heut so schnell es geht fertig werden!

Danke im Vorraus!

Hier die bestreffenden Passagen Code (auf Bild1 der hauptzeitleiste):
Code:
stop();


sekunden = 0;
laufzeit = 10;
filmaktiv = 1;
weiter = 0;


function filmzaehler(){
	if (weiter == 0){
		sekunden++;
		trace("Interval Sekunden: "+sekunden);
		if (sekunden >= laufzeit){
			filmaktiv = 0;
			weiter = 1;
			}
		}
	}


setInterval(filmzaehler, 1000);


// .......


this.onKeyDown = function(){
      if (weiter == 1){
	   if (Key.getCode() == 81) {
            // ........
            sekunden = 0;
		 laufzeit = 10;
		 filmaktiv = 1;
		 weiter = 0;
            }
         }
      }
__________________
==>remix.nin.com<==
//
Life Is Too Short For Boring Music!
Fantasie ist die einzige Waffe gegen die Wirklichkeit.
<sVkVmVit> ist offline   Mit Zitat antworten
Alt 15-01-2008, 10:28   #2 (permalink)
Rock'n'Bass
 
Benutzerbild von <sVkVmVit>
 
Registriert seit: Feb 2006
Ort: Hamburg
Beiträge: 202
k, hab das Problem jetzt selbst gelöst bekommen. Lag an was anderem, dass das nicht funzte. Jetzt scheints alles zu klappen. puhh!!
__________________
==>remix.nin.com<==
//
Life Is Too Short For Boring Music!
Fantasie ist die einzige Waffe gegen die Wirklichkeit.
<sVkVmVit> ist offline   Mit Zitat antworten
Alt 15-01-2008, 10:33   #3 (permalink)
ChronoGuard
 
Benutzerbild von SpecOps-12
 
Registriert seit: Mar 2002
Ort: Saarbrücken
Beiträge: 2.649
Ich würds trotzdem so machen. Is eher unschön, wenn der interval ewig weiterläuft.

PHP-Code:
stop();

var 
sekunden:Number 0;
var 
laufzeit:Number 10;
var 
filmaktiv:Number 1;
var 
weiter:Number 0;
var 
myInt:Number;


function 
filmzaehler() {
    if (
weiter == 0) {
        
sekunden++;
        
trace("Interval Sekunden: "+sekunden);
        if (
sekunden>=laufzeit) {
            
clearInterval(myInt);
            
filmaktiv 0;
            
weiter 1;
        }
    }
}

myInt setInterval(filmzaehler100);

var 
myListener:Object = new Object();
myListener.onKeyDown = function() {
    
trace("watt?");
    if (
weiter == 1) {
            
sekunden 0;
            
laufzeit 10;
            
filmaktiv 1;
            
weiter 0;
            
myInt setInterval(filmzaehler100);
    }
};
Key.addListener(myListener); 
PS: Der Listerner ist für den Mac, der kann key nicht ohne Listener.
__________________
we will stop enhancing the truth in 3, 2, ...
SpecOps-12 ist offline   Mit Zitat antworten
Alt 15-01-2008, 15:55   #4 (permalink)
Rock'n'Bass
 
Benutzerbild von <sVkVmVit>
 
Registriert seit: Feb 2006
Ort: Hamburg
Beiträge: 202
Jupp, hatt ich auch schon vorgehabt. Nur jetzt liefs erstmal endlich und da war ich erstmal froh drüber.
Werd den clearInterval noch reinbauen, um das ganze perfekt zu machen..
__________________
==>remix.nin.com<==
//
Life Is Too Short For Boring Music!
Fantasie ist die einzige Waffe gegen die Wirklichkeit.
<sVkVmVit> ist offline   Mit Zitat antworten
Antwort

Lesezeichen

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 06:45 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele