Avatar billede gobbles Nybegynder
16. august 2004 - 13:03 Der er 21 kommentarer

Loade en swf med en swf.

Hmm den lidt kryptiske overskrift dækker over at jeg for gang nr. 100 har lavet en preloader der først viser sit smukke ansigt lige omkring 90%.....
Jeg tror jeg skal ændre min måde at loade på da dette sker ret ofte lige i tiden, hvordan kan jeg ha en preloader swf der viser sig med det samme og loader min "main.swf" når denne er loaded helt færdigt starter main.swf i level0 (og smider preloaderen "væk")  jeg tror det er måde at gøre det på, altså med en (preload)swf der loader en anden (main)swf

Tak for alle smart forslag:....
Avatar billede nikolajdu Nybegynder
16. august 2004 - 13:12 #1
hvis du har lyd, video eller movieclips hvor du bruger attach-sound-video-movieClip så skal du slå "export in first frame" fra inde i dit Library (CTRL+L) - højreklik på elementet og fjern krydset i checkboxen.
Avatar billede gobbles Nybegynder
16. august 2004 - 13:18 #2
nope, det har jeg ikke?

øhh skal lige høre, var det sådan du forstod mit spørgsmål?
(måske jeg lige skulle omformulere mig)
Jeg havde tænkt mig at bruge en preloader swf der ikke fyldte ret mange kb og derfor var på skærmen med det samme til at loade min main.swf med, den skal vise hvor mange % af main.swf der er loaded og når alt er loaded køre main.swf, hvis jeg laver en lille swf og skriver noget ligende loadMovie("main.swf",0) vil den jo fjerne preloaderen med det samme og starte main.swf, så er jeg lige langt..jeg har flere ens swf og det ville være rart med en loader jeg bare kunne ændre navnet på og smide op sammen med min main.swf..
Avatar billede nikolajdu Nybegynder
16. august 2004 - 13:40 #3
Hvis du vil have din preloader blivende på skærmen (hvilket vel er idéen med den ;!))

Så brug loadMovie("main.swf",1) - eller lidt smartere:

loader.text = "0%";
this.createEmptyMovieClip ("nyfilm", 1);
//
preload = function () {
    preloader._xscale = 0;
    nyfilm.loadMovie ("minfilm.swf");
    preloader.onEnterFrame = function () {
        ialt = Math.round ((nyfilm.getBytesTotal () / 1024));
        hentet = Math.round ((nyfilmt.getBytesLoaded () / 1024));
        procent = int (hentet / ialt * 100);
        this._xscale = procent;
        loader.text = procent + "%";
        if (hentet >= ialt && ialt != 0) {
            this._visible = false;
            _level0.loaderText._visible = false;
            this.onEnterFrame = false;
        }
    };
};
preload();

Hvor så "preloader" her er et movieclip (f.eks en streg der bliver trukket ud) og % står i et tekstfelt "loader".
Avatar billede gobbles Nybegynder
16. august 2004 - 13:49 #4
hmmm den her fantastiske kode....hvor placeres den? i en særskilt .swf  ?
Avatar billede nikolajdu Nybegynder
16. august 2004 - 13:52 #5
Nej det er hvad du skal have i din "preloader" fil.

Ret selv "minfilm.swf" til navnet på den fil du vil loade:

loader.text = "0%";
this.createEmptyMovieClip ("nyfilm", 1);
//
preload = function () {
    preloader._xscale = 0;
    nyfilm.loadMovie ("MINFILM.SWF");
    preloader.onEnterFrame = function () {
        ialt = Math.round ((nyfilm.getBytesTotal () / 1024));
        hentet = Math.round ((nyfilmt.getBytesLoaded () / 1024));
        procent = int (hentet / ialt * 100);
        this._xscale = procent;
        loader.text = procent + "%";
        if (hentet >= ialt && ialt != 0) {
            this._visible = false;
            _level0.loader.text._visible = false;
            this.onEnterFrame = false;
        }
    };
};
preload();
stop();
Avatar billede gobbles Nybegynder
16. august 2004 - 13:58 #6
hmmm det er rigtigt fint....og tak, men ikke lige det jeg har brug for, jeg skal bare lige vide hvordan jeg vha. af en ekstern swf loader min main.swf uden den går igang..........jeg vil helst gøre det vha. en ekstern swf hvor jeg bare ændrer navnet på det jeg vil loade..
Avatar billede nikolajdu Nybegynder
16. august 2004 - 14:05 #7
Hvis ikke du vil have filmen til at afspille indsætter du jo en stop(); i første frame i "main" filmen.

Så kan du starte den med :

_level0.nyfilm.gotoAndPlay(5); // hvor 5 så er den frame eller framelabel du vil køre når den skal starte.
Avatar billede gobbles Nybegynder
16. august 2004 - 14:14 #8
Ideen er meget god og tak igen, men hvis du ikke kan svare på hvordan jeg gør det med en ekstern .swf så er det ligemeget, men smid endeligt et svar jeg finder selv ud af det...
Avatar billede nikolajdu Nybegynder
16. august 2004 - 14:17 #9
jamen for pokker - så forklar dig istedet for at blive fornærmet. Jeg vil gerne hjælpe dig men forstår simpelthen ikke hvad du vil. Du skriver eksternt og jeg loader så en ekstern fil for dig - Men det er altså ikke rigtigt??
Avatar billede mat Nybegynder
16. august 2004 - 14:19 #10
nikolaj > jeg tror han mener at preloaderen også skal være en ekstern fil.
Avatar billede nikolajdu Nybegynder
16. august 2004 - 14:26 #11
og den skal så preloades først?
Avatar billede mat Nybegynder
16. august 2004 - 14:29 #12
hehe ja, i teorien :)
Avatar billede gobbles Nybegynder
16. august 2004 - 14:30 #13
ok ok godt ord igen, syntes bare det er så klart så klart, jeg starter helt fra bunden:
Jeg har 7 "ens" swf(og der kommer flere) og istedet for at skulle til at ændre og indsætte et preload script i hver, som jeg har gjort og som ikke rigtig virker(viser sig først ved ca. 90%)
istedet Ønsker jeg at lave en lille "preload.swf" som jeg kalder med min index.html, i preload.swf er der en animation på 100 frames og den loader så min  main.swf
og som en "alm preloader" går den til den frame i preload.swf svarende til % loaded af main.swf.    preload.swf er meget lille og den eneste funktion er at sikre at hele main.swf er loaded og derefter starte den(main) på denne måde kan jeg bare ændre navnet på den swf jeg vil ha loaded i preload.swf,  tænkt eksempel:

//man kommer ind på www.minside.dk og preload startes

varMovie="main.swf"
getBytesTotal("varMovie")
loadMovie("varMovie")
antal=getBytesloaded("varMovie)*1024/100 osv.
bar.gotoAndStop(natal)
if (antal==100){
start varMOvie}

her skulle jeg jo bare ændre "varMovie" for at ha en preloader til alle mine swf
problemet er at så snart jeg taster loadMovie går den jo igang med at afspille main.swf og den er ikke loaded færdig endnu...

er det mere klart, det bliver hurtigt nogle lange udredninger
Avatar billede gobbles Nybegynder
16. august 2004 - 14:33 #14
preloaderen ville være så lille at at tiden man skulle vente på den var underordnet...men tak mat, ja preloaderen skal også være en ekstern swf.. swf1 og swf2...  swf1 er lille bitte og viser hvor meget af sw2 der er loaded og starter sw2 når den er klar...
Avatar billede gobbles Nybegynder
16. august 2004 - 15:12 #15
øhhh bump!
Avatar billede gobbles Nybegynder
16. august 2004 - 16:03 #16
pakkede i helt sammen og skred?  syntes ikke jeg var så strid...
Avatar billede nikolajdu Nybegynder
16. august 2004 - 16:09 #17
nej nej. Er bare i gang med at lave mad - Ahm ahm :!)

Skal bare bruge lidt tid til at tænke over problemstillingen her så det kræver noget energi.
Avatar billede gobbles Nybegynder
16. august 2004 - 16:15 #18
nå ok så vil jeg ikke forstyrre..måske jeg selv skulle prøve lidt mad...nahhh tager kaffen istedet!

JEg fulgte en tråd på flash kit hvor udfordringen var at lave en preloader fuldstændig vha.  "hard coding" alt blev tegnet vha. api og alle ting oprettet dynamisk, det de så endte med var noget kode man bare skrev sit link i og derefter gjorde den alt for dig, det er jo noget ligende jeg forsøger at lave, bare med et swf hvor det enste jeg skal, hvis jeg ønskede at bruge den andre steder, var at ændre linket og min 100 frames animation, lidt for at undgå og lave 100 preloades hver måned...+ at den helt sikkert ikke ville starte ved de 90%

velbekomme
Avatar billede mat Nybegynder
16. august 2004 - 16:30 #19
Dit sidste forslag ville da også være meget sejere :) - så kan du koge det ned til min_film = "some_movie.swf"; #include "preloader.as"

("hard coding" er vist noget lidt andet og knap så positivt :)
Avatar billede gobbles Nybegynder
16. august 2004 - 16:45 #20
skal lige se om jeg kan finde et link til tråden...køn var den ikke ....
2 sek.....

hmm kunne ikke finde tråden igen, men jag havde i sin tid downloaded et eksemplar..smider den lige her for de som ville syntes det skulle prøves.

http://www.gobbles.dk/smart/preload-class.zip
Avatar billede gobbles Nybegynder
16. august 2004 - 20:46 #21
Øhh hvem slukkede lyset?
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