13. januar 2008 - 17:55Der er
15 kommentarer og 1 løsning
Vertical rulletekst - hvordan?
Jeg vil gerne vise en rulletekst hvor en linje vises ad gangen, det vil sige i min flash video er der et bestemt sted på "stage" hvor jeg gerne vil have at en linje er synlig.
Der skal eksempelvis stå: Mælk Gær Smør Magarine Mel
Hvor én linje så vises ad gangen. Lidt som en scroll tekst, bare nede fra og op i stedet for fra højre mod venstre.
Jeg vil gerne holde det så simpelt som muligt, og gerne have mulighed for at skrive teksten direkte i mit action script?
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
Slettet bruger
14. januar 2008 - 08:27#1
Tja... Jeg kan give dig teorien, men hvis du vil have et konkret kodeeksempel, kommer det til at tage lidt tid -- og tid har jeg ikke for meget af, for jeg tror, min matematiklærer bliver lidt træt af mig, hvis jeg skriver AS i timen :)
Du kan oprette en tekstboks med ActionScript og tilpasse den teksten. Herefter kan du give den en onEnterFrame, der får den til at køre opad og sletter den, når den når forbi toppen af skærmen.
Hvor god er du til AS? Er ovenstående forståeligt?
Tjaa, forstår princippet men er ikke helt klar over hvordan!
Synes godt om
Slettet bruger
18. januar 2008 - 19:13#5
Så tager vi det lige fra en ende af...
Du kan oprette et nyt MC således: destination.createEmptyMovieClip("rulletekst", 0); // Hvor 0 er depth
Så kan du oprette et tekstfelt derinde: destination.rulletekst.createTextField("tekst", 0, -200, -300, 400, 600); // navn, depth, x, y, width, height
Derefter sættes nogle egenskaber: destination.rulletekst.tekst.selectable = false; // Så man ikke kan markere teksten destination.rulletekst.tekst.setTextFormat(tekstformat); // Bare skriv hvis du vil vide mere destination.rulletekst.tekst.text = "Rulleteksten skal stå her.\nDette er så linie to.\nOg tre."; // Selve teksten
Nu kan du indstille MC'et: destination.rulletekst._x = (Stage.width-destination.rulletekst._width)/2; // Indtiller start-x-værdien, så teksten er midt i billedet destination.rulletekst._y = Stage.height // Gæt en gang... Ja, det er rigtigt! Den sætter tekstens y-værdi, så den starter i bunden af scenen
Selve bevægelsen kommer her (lidt mere avanceret): destination.rulletekst.onEnterFrame = function() { if (this._y > Stage.height-this._height) this._x += 5 // 5 er hastigheden else this.removeMovieClip(); // Sletter MC'et med teksten, når det har passeret skærmens top }
Ovenstående burde virke.
Synes godt om
Slettet bruger
18. januar 2008 - 19:14#6
Whoa! Så vidt jeg husker, skal man altid sætte 'text format' efter 'text'... Altså gør ændringen af tekstformatteringen her destination.rulletekst.tekst.setTextFormat(tekstformat); // Bare skriv hvis du vil vide mere destination.rulletekst.tekst.text = "Rulleteksten skal stå her.\nDette er så linie to.\nOg tre."; // Selve teksten ingen forskel. Byt i stedet om på dem: destination.rulletekst.tekst.text = "Rulleteksten skal stå her.\nDette er så linie to.\nOg tre."; // Selve teksten destination.rulletekst.tekst.setTextFormat(tekstformat); // Bare skriv hvis du vil vide mere
takker, er der mulighed for at lave sådan at rulleteksten fader ud, altså i top og bund skal den gå fra 100% til 0% opacity over x-antal pixels, eksempelvis 50 :-)
Synes godt om
Slettet bruger
23. januar 2008 - 16:13#8
Hmm... Da er det nok lettest at tilføje en shape med en linier farve fra eksempelvis 0 % sort til 100 % sort. Er det i orden at lave det i hånden eller skal det også være med kode?
Det er fordi flashen er transparent for at det website den skal vises på kan bibeholde sin gradians/liniere farve. Kan det slet ikke laves med kode?
Synes godt om
Slettet bruger
23. januar 2008 - 16:47#10
Tja, så skal hver enkelt linie laves som et selvstændigt tekstfelt, hvor du så ændrer selve tekstens transparens... Det kommer til at tage tid at lave og processorkraft at vise.
vildt skud - kan man eventuelt måle på den farve der ligger under et object og så generere en linerfarve udfra målingen? - vis du kan følge mig?
Synes godt om
Slettet bruger
23. januar 2008 - 17:05#12
Jeg kan godt følge dig, og det kan muligvis lade sig gøre, men så er det vist lettere at skrive funktionen til rulleteksten i JavaScript og køre det direkte på siden!
hmmm - ok, men i hvertfald tak for hjælpen! - arbejder du freelance også? mit firma bruger tiltider flash folk - og der er nogle projekter igang lige nu!
smider du et svar, så acceptere jeg så du kan få point!
Synes godt om
Slettet bruger
23. januar 2008 - 17:38#15
Svar :o) Jeg har ikke arbejdet freelance før, men du er velkommen til at kontakte mig... (email fjernet af admin)
Synes godt om
Slettet bruger
04. april 2008 - 10:50#16
Det er altid høfligt at svare ;P
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.