26. januar 2006 - 12:30Der 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.
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.
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?
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.
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.
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.
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.
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.
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?
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 :)
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.
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.
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 :)
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.