Avatar billede listeper Nybegynder
26. januar 2006 - 12:30 Der er 24 kommentarer og
1 løsning

Loop i en frame.

Hej,

Jeg sidder og har lavet noget i en single frame, en meget simple movie som skifter mellem 3 billeder. Nu vil jeg bare gerne have movie-clippet til at loope, altså jeg vil gennemtvinge mit actionscript til at "spille" igen når den har gennemløbet min kode. Hvorledes kan jeg gøre dette?

OBS!: Jeg er klar over at flash generelt altid looper sine movies, men det gør den altså ikke så længe man har det hele i sin frame 1! Tænk på det som om jeg ønsker at lave en roterende banner funktion i en frame.

min kode:

  #include "lmc_tween.as"

  setProperty("billede_1",_alpha,"100");
  setProperty("billede_2",_alpha,"0");
  setProperty("billede_3",_alpha,"0");

  billede_1.alphaTo(0,4,"",6);
  billede_2.alphaTo(100,4,"",6);
  billede_2.alphaTo(0,4,"",16);
  billede_3.alphaTo(100,4,"",16);
  billede_3.alphaTo(0,4,"",26);
  billede_1.alphaTo(100,4,"",26);
Avatar billede webblaster Nybegynder
26. januar 2006 - 12:35 #1
kan du ikke bare bruge

gotoAndPlay(1);

som det sidste den skal gøre i framen så starter den forfra.
Avatar billede listeper Nybegynder
26. januar 2006 - 13:02 #2
Det har jeg allerede prøvet, burde jeg nok have nævnt i mit indlæg før, men det virker ikke nej. Jeg troede slet ikke det kunne være så vanskeligt. Du må meget gerne komme med flere forslag hvis du skulle have nogle.

:)
Avatar billede webblaster Nybegynder
26. januar 2006 - 14:35 #3
prøv at sæt det hele ind i en do... while løkke også bare sæt den til at køre uendeligt:

var i = 0;
do {

::Code::

} while (1 > i);

det burde kunne tvinge den til at blive ved med at afvikle koden vil jeg mene *G*
men det kan jo være at jeg tager fejl
Avatar billede listeper Nybegynder
26. januar 2006 - 14:44 #4
En uendelig lykke er ikke lige svaret, nej ellers tak. Der må da findes en anden måde hvorpå jeg kan få actionscript til at gentage det der står i en frame?
Avatar billede thulstrup Nybegynder
26. januar 2006 - 16:43 #5
this.onEnterFrame = function(){
  trace("weeee")
}
Avatar billede maqhem Nybegynder
26. januar 2006 - 19:04 #6
while(true){
  #include "lmc_tween.as"

  billede_1._alpha = 100;
  billede_2._alpha = 0;
  billede_3._alpha = 0;

  billede_1.alphaTo(0,4,"",6);
  billede_2.alphaTo(100,4,"",6);
  billede_2.alphaTo(0,4,"",16);
  billede_3.alphaTo(100,4,"",16);
  billede_3.alphaTo(0,4,"",26);
  billede_1.alphaTo(100,4,"",26);
}

duer det ikke, giver du os så ikke lige din include?
Avatar billede listeper Nybegynder
27. januar 2006 - 10:18 #7
thulstrup > Skal jeg sætte min hele min kode ind i stedet for trace("weee"), eller kun dele af den?

zipper-znake > Din mulighed kommer op med at scriptet vil få min computer til at kører langsomt og om jeg derfor vil afbryde det - med andre ord, din uendelige løkke virker ikke efter hensigten :( Min include er blot så jeg kan benytte mig af en nemmere tweening, det er bare en extension jeg har installeret, jeg kunne ikke se hvad I ville få ud af at se den.

Er der virkelig ingen der kan hjælpe mig?
Avatar billede maqhem Nybegynder
27. januar 2006 - 14:43 #8
hovsa! min fejl, lige nu tænker jeg C++ - der er uendelige løkker nemlig ikke laggende.
Avatar billede maqhem Nybegynder
27. januar 2006 - 14:54 #9
kunne du ikke bare bruge denne kode egentlig:

active = 1;
max = 3;
onEnterFrame = function(){
    for(i = 1; i < max + 1; i++){
        (i == active) ? (this["billede_" + i]._visible = true) : (this["billede_" + i]._visible = false);
    }
}
function shtImg(){
    (active == max) ? (active = 1) : (active++);
}
mItv = setInterval(shtImg, 4000);

?
Avatar billede maqhem Nybegynder
27. januar 2006 - 14:54 #10
nu ved jeg ikke hvad alt dette dér alphaTo er, men det kan vel kodes ind i :)
Avatar billede listeper Nybegynder
30. januar 2006 - 09:42 #11
zipper-znake > heh, kan desværre ikke bruge din kode - Jeg må indrømme at jeg havde aldrig regnet med at det ville blive så svært at få noget til at loope i en frame, men det er det så åbenbart. Her er ihvertfald ingen på eksperten der kan svare mig. Jeg kan også lige fortælle dig at det der alphaTo er en funktion hentet fra min include fil. En måde som gør det nemmere for brugeren at kode en alpha tween :)
Mange tak for din hjælp ellers, men jeg må nok ud og finde mig en actionscript programmør og ikke en c++ programmær.
Avatar billede nikolajdu Nybegynder
30. januar 2006 - 10:37 #12
Zipper skær dog ind til benet manner :D

this["billede_" + i]._visible = (i == active) ? true : false;
Avatar billede nikolajdu Nybegynder
30. januar 2006 - 10:43 #13
Det er ikke muligt at loope i én frame - Der skal du bruge mindst 2 - Du er altså nødt til at hoppe op og ned.

Du er i øvrigt helt gal på den når du skriver at flash ikke looper i frame 1 - Men der loopes ikke i et movieclip hvis kun der er én frame - Hvilket jo så i øvrigt heller ingen mening vil give - for hvad skal der loopes for?

Hvis du uddyber lidt mere hvad det er du forestiller dig vil det være en hel del nemmere at hjælpe.
Avatar billede nikolajdu Nybegynder
30. januar 2006 - 10:44 #14
Og jo du kan lave en timeout som zipper har gjort men teknisk set er det ikke et loop i framen men en loop i funktionen. Den bør iøvrigt cleares på et tidspunkt.
Avatar billede maqhem Nybegynder
30. januar 2006 - 13:50 #15
listeper > "men jeg må nok ud og finde mig en actionscript programmør og ikke en c++ programmær":

for det første hedder det ikke en programmær men en programmør.

For det andet koder jeg altså ikke kun c++, det var skam bare en fejl som jeg forsøgte at udtrykke det. Jeg koder langt mere Flash.

Men jeg kan nu kun give nikolajdu ret. Forklar det bedre, så skal du få det svar du har brug for. Hér på eksperten kan du få svar på alt i hvert fald omkring Flash, AS og AS2, så nej, det er ikke nødvendigt at finde dig et andet sted for at få den kode der duer, heller ikke nødvendigt at finde en anden programmør.
Får han du så finder samme historie som du har givet hér får du helt sikert ikke andet svar fra ham.

Bare til din information...
Avatar billede maqhem Nybegynder
30. januar 2006 - 13:51 #16
*Får han så bare samme historie som du har givet hér får du helt sikkert ikke andet svar fra ham.
Avatar billede listeper Nybegynder
30. januar 2006 - 20:18 #17
nikolajdu > heldigvis vidste du hvad jeg mente :) Jeg er bare bevidst omkring EMCA standarten, ikke så meget omkring flash, men jobbet på et reklamebureau byder på mange udfordringer. Tak for hjælpen, jeg bliver jo så bare nød til at lave det i flere frames åbenbart. Troede ellers lige jeg var smart at lave det hele i en frame.

zipper-znake > Jeg håber også du er bevidst omkring at programmær bare var en slå-fejl. Sådan noget sker stadig for mig efter mange år i branchen, forsat god dag til dig :)

Da jeg så igen, er helt ny herinde, er der så nogle der kan fortælle mig hvordan jeg lukker denne tråd?
Avatar billede listeper Nybegynder
30. januar 2006 - 20:28 #18
*ECMA :D Nu bliver de her slåfejl næsten for sjove.
Avatar billede maqhem Nybegynder
31. januar 2006 - 06:08 #19
yes! nikolajdu, dig selv, jeg eller flere af os aflægger svar, som du så skal acceptere. Hvis du mener jeg er forkert på den og nikolajdu har fat i det rigtige beder du ham om at lægge et svar.

Samler han ikke på point (nogle gør altså bare ikke) så kan du smide et svar selv og acceptere dét.

Men når du lukker et spørgsmål så accepterer du et svar, og i samme hånd trykker du Abonnér fra - så får du ikke meddelelser fra dette spørgsmål mere.

Normalt lukker jeg aldrig et spørgsmål, blot accepterer, da det jo kan være, at der kommer én en måned senere måske for at bidrage - hvad ved jeg :)
Avatar billede nikolajdu Nybegynder
01. februar 2006 - 09:09 #20
Du finder masser af kompetence på eksperten men den stopper på et eller andet tidspunkt ikke fordi folk ikke kan men fordi vi er der hvor ting koster kassen :))

Som regel så er hjælp til selvhjælp vejen frem - Du prøver så langt du kan og folk kommer så og skyder dig ned eller hjælper dig så færdigt som muligt før vi rammer ovenstående.

omkring hele idéen her så har du trods alt 2 muligheder for at loope noget som ikke umiddelbart selv looper. Det er fuldt ud brugbare og lovlige metoder. Det ene er setInterval og det andet er onEnterFrame - begge skal stoppes igen efter endt arbejde.
Avatar billede nikolajdu Nybegynder
01. februar 2006 - 09:14 #21
Når det så er sagt så er du igang med Flash 4 syntax - Det er fra den gang jeg startede med Flash og ruder konge formodenligt var knægt. Det er faktisk lige der omkring hvor man synes mormor bliver pinlig :))

Anyway setProperty er forlængst afløst af dot . syntax ( for at nærme sig YMCA/ECMA standarden ).

setProperty("billede_1",_alpha,"100");
er det samme som

billede_1._alpha = 100;

eller som zipper skrev hvis det skal igennem en løkke.

this["billede_" + i]._alpha

/Nikolaj
Avatar billede nikolajdu Nybegynder
01. februar 2006 - 09:22 #22
zipper som nu altså hedder magnem... :()
Avatar billede maqhem Nybegynder
03. februar 2006 - 21:44 #23
burde jeg lave navnet om igen?

Tænkte bare det nu var en mulighed at lave navnet om mens jeg nu var blevet pro-medlem for en måned. Har nemlig heddet zipper-znake siden jeg startede accounten da jeg var 13 - dengang var navnet cool, men det lyder da af **** hvis du spørger mig i dag :)
Avatar billede maqhem Nybegynder
03. februar 2006 - 21:44 #24
og så er det nu godt nok MAQHEM - det er ikke noget magnetisk ;)
Avatar billede listeper Nybegynder
22. februar 2006 - 16:14 #25
lukket // da der intet svar er blevet givet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester