Dynamische Buttons -> Variable an onPress übergeben

TimN

Erfahrenes Mitglied
Hallo,

ich habe mal wieder ein Problem:
Ich erzeuge zur Laufzeit ein paar Schaltflächen und weise diesen auch onPress-Prozeduren zu. Wie kann ich dieser Prozedur jetzt eine Variable übergeben?
Also mal an einem konkreten Beispiel:
Code:
for (currentPhoto = 0; currentPhoto < 123; currentPhoto++) {
   var photo:MovieClip = this.attachMovie("photo", "photo"+currentPhoto, 10+currentPhoto);
   photo.onPress = function() {
       trace(currentPhoto);   // hier ist das Problem
   }
}

Der obige Code funktioniert natürlich nicht. Egal auf welches Foto man klickt wird die selbe Zahl ausgegeben. Ist ja auch klar, es wird ja jedes mal die selbe Variable ausgegeben.

Wie kann ich denn das machen, damit verschiedene Zahlen ausgegeben werden? (Also jeweils die richtige...)


Gruß,
Tim
 
PHP:
for (currentPhoto = 0; currentPhoto < 123; currentPhoto++) {
   var photo:MovieClip = this.attachMovie("photo", "photo"+currentPhoto, 10+currentPhoto);
photo._currentPhoto = currentPhoto; // property dynamisch erstellen
   photo.onPress = function() {
       trace(_currentPhoto); 
   }
}
 
Ich mach zuviel AS3, da erkennt die avm den scope automatisch :). In as2 muß du noch mit this auf dem Mc referenzieren:

trace(this._currentPhoto);
 

Neue Beiträge

Zurück