20. januar 2002 - 13:25Der er
25 kommentarer og 1 løsning
Hurtige biler... Hvordan laver jeg en bevægende tekst
Jeg kunne godt tænke mig at lave en ligende effekt som findes på http://www.koenigsegg.com/frameset.html under fx \"The Car\">>\"specifications\"... (Teksten som kommer \"flyvende\" fra en ad siderne. Effekten er formentlig et movieclip som bliver aktiveret, men hvordan kan jeg \"gå ind i\" movieclippets timeline, for herved at bestemme den pæcise frame, som brugeren skal hen til? Jeg har 10 tekstbidder som netop skal kører ligesom koenigeggs.com. Tekstbidderne skal styres af to pileknapper. Dvs. jeg ønsker actions-koder til at styre et movieclip.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Altså den del, hvor teksterne står efter hinanden i et langt movieClip, men man ser kun den del, som man har klikket på. Når der så klikkes på noget nyt, så scroller den hen over punkterne til den kommer til det valgte - korrekt forstået?
Men i din version, skal man kun kunne vælge forrige eller næste og ikke en vilkårlig én?
Ja. jeg havde tænkt mig en pil til forrige og en pil til næste (evt. kunne man godt lave 1, 2, 3... 9 og 10. Så kunne man trykke på dem, hvis man hellere ville det istedet for at bruge pilene.)
Mosegris...>>Men det kunne godt være lavet i flash *G*... havde ikke lige tjekket kildekoden, men gik bare ud fra at det var flash.... ha ha... Så kan du måske ik hjælpe?
Det er nem version, som er svær at opdatere, og en svær version, som er nem at opdatere... Det nemmeste er simpelthen at lægge alle teksterne og billederne ind efter hinanden i et langt mc. Du kan selvfølgelig lave grafikelementer i hver sit symbol og sørge for, at de for eksempel holder sig inden for 0,0 til 400,300. Herefter lægger du alle disse ind i dit holder-movieClip og forskyder dem med x=400*nummer... De vil ret hurtigt komme uden for skærmen, men de eksisterer alligevel...
Herefter har du i root et layer øverst, hvor knapperne er, under det et baggrundslag med et hul, der er 300*400, og under det et layer, hvor du indsætter dit holder-movieClip.
Giver det mening?
Knapperne kommer vi til om lidt...
At eksemplet var lavet i js kunne du nemt se ved blot at højreklikke. Så står du ikke Flash-menuen men en standard html-menu...
Den er jeg nogle lunde med på: Jeg laver et langt movieclip, hvor der er et vis antal pix i mellem hver tekst.... Nu skal jeg bare have en \"kode\" under næste/forrige som kan sige gå til frame X i movieclippet...
okay og godt så... Dit lange mc kalder du for \"texts\".
Herefter laver du et nyt movieClip, som er tomt - et såkaldt smartClip. Dette indsætter du i et nyt layer ude i roden og kalder mc\'et for \"smartclip\". På dette skriver du:
onClipEvent(load) { moving = 0; width = 400; //her indsætter du bredden af de enkelte step speed = 40; //her indsætter du hvor mange px, der skal passeres pr frame num_texts = 10; // antal texter current = 1; //vi starter på billede 1 start_x = _root.texts._x; start_y = _root.texts._y; function goto(pict) { if (pict != current && pict > 0 && pict < num_texts) { next = pict; target_x = start_x+(pict-1)*width; direction = (_root.texts._x-target_x > 0) ? -1 : 1; moving = 1; } } } onClipEvent(enterFrame) { if (moving) { if (direction*(_root.texts._x+direction*speed) >= direction*target_x) { _root.texts._x = target_x; moving = 0; current = next; } else { _root.texts._x += direction*speed; } } }
Det er skrevet sådan lidt ud i luften, men det skulle virke...
Herefter kan du blot kalde den med:
_root.smartclip.goto(4)
for at gå til nummer 4, eller
_root.smartclip.goto(_root.smartclip.current+1);
for at gå til den næste. -1 istedet giver så selvfølgelig den forrige.
Denne kode kunne selvfølgelig være skrevet direkte på \"texts\" og ikke dermed undgå alle krydsreferncerne, men jeg har det godt med at skille kode fra grafik på denne måde...
OKay... det vil jeg prøve at få til at fungere. Det ser lidt uoverskueligt ud, men skal bare lige tjekke det lidt ud *S*. Forresten nu jeg har en ekspert... hvordan kan jeg undgå at et movieclip går i gang når jeg springer mellem forskellige scener (i samme movie)? Jeg har sat en STOP-action ind i starten af hver scene, men alligevel kører movieclippene. Koden på selve MC hedder:onClipEvent (enterFrame) { gotoAndStop (_currentframe+_root.direction); }
At du har en stop() i din _root-timeline påvirker (heldigvis) ikke alle de andre timelines. For de forskellige timelines skal kunne stoppes og startes efter behov uafhængigt af hinanden...
Den med at sætte en stop() i den aller første frame virker ikke (som jeg heller ikke forstår?).
Selve indholdet af mc er ikke det samme, men det er funktionen. Mc fungere som en slags scrollbar. Men hver gang jeg skifter scene kører scrollbaren i bund.
For hvis den ikke er 0, så bliver den jo ved med at lægge værdien til dens nuværende frame, som så hele tiden bliver større/mindre. Det har du jo selv sagt, at den skal...
Det så jeg. Jeg kom bare til at kopiier fra et anden movieclip... Jeg har ændret det. Så det er som ovenstående, men movieclippet kører stadigvæk. Lad mig uddybe: Jeg har en knap som har action:
on (press) { gotoAndStop (\"menu\", 1); }
(Knappen henviser til en ny scene)
Idet jeg kommer til den nye scene starter scrollbaren/Movieclippet. Oven på MC har jeg action :
Tak skal du have... Ja computer og programmering er nu engang nogle underlige creatures.
Hvis jeg laver labels., skal jeg så bare give mine frames navne? og kun arbejde i én scene? Det bliver lidt mere besværligt at holde styr på, men det gå vel nok!
Nej. Jeg afslutter nu! Tak for hjælpen. Her er dine velfortjente point!
Synes godt om
Ny brugerNybegynder
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.