MattiaxMedlem sedan feb. 200738 inlägg Jag har en massa movieclips som agerar som knappar.
Det är typ 20 stycken.
De heter work1, work2, work3, osv...
Kan jag använda nån smidig loop istället för följande kod??
Det blir ju ganska lång kod om man har 20+ knappar..
_root.WorkNumber.work1.onRelease = function(){
this.gotoAndStop(2);
}
_root.WorkNumber.work2.onRelease = function(){
this.gotoAndStop(2);
}
_root.WorkNumber.work3.onRelease = function(){
this.gotoAndStop(2);
}
var count:Number=20;
var i:Number:
for(i=1;i<=count;i++){
_root.WorkNumber["work"+i].onRelease=function(){
this.gotoAndStop(2);
};
}
MattiaxMedlem sedan feb. 200738 inlägg Tack för hjälpen, det var precis så jag hade tänkt mig..
MattiaxMedlem sedan feb. 200738 inlägg Hur gör jag för att hålla koll på vilken knapp som blivit tryckt?
Jag skulle vilja spara nummret på den tryckta knappen i en variabel.
Variabeln "tryck" ska få samma siffra som knappen har.
T.ex. om man klickar på work4 ska "tryck" få värdet 4 och om man
klickar på work18 så ska "tryck" få värdet 18. Ja ni fattar nog..
Jag kan inte komma på något bättre än detta, men det funkar ju inte som du kan förstå..
var count:Number=20;
var i:Number:
var tryck:Number;
for(i=1;i<=count;i++){
_root.WorkNumber["work"+i].onRelease=function(){
this.gotoAndStop(2);
tryck = i;
};
}
SinusMedlem sedan dec. 200384 inlägg var count:Number = 20;
var i:Number;
var tryck:Number;
for(var i:Number = 1; i <= count; i++){
_root.WorkNumber["work"+i].ID = i;
_root.WorkNumber["work"+i].onRelease = function(){
this.gotoAndStop(2);
tryck = this.ID;
};
}
För att vara lite tjafsig så finns det ingen mening att deklarera "tryck" utanför onRelease funktionen då den inte är i samma scope där.
Att deklarera "i" både inne i och utanför loopen igen är inte heller nödvändigt.
Inget problem direkt och bra jobbat såhär mitt i natten Sinus :)
Men bara för att inte förvirra här är en rensad version:
var count:Number = 20;
var i:Number;
for(i = 1; i <= count; i++){
_root.WorkNumber["work"+i].ID = i;
_root.WorkNumber["work"+i].onRelease = function(){
this.gotoAndStop(2);
tryck = this.ID;
};
}
MattiaxMedlem sedan feb. 200738 inlägg Vilken kanonbra lösning.
Tusen tack båda två..
Jag kommer nog med nån dum fråga snart igen,
ska bara köra fast igen så.. :)
Tycker det är en god vana att alltid deklarera sina variabler i förväg. Även om jag personligen brukar slarva med just "i".
/Mirandir