Avatar billede para7 Nybegynder
31. marts 2003 - 17:17 Der er 6 kommentarer og
1 løsning

Preloader progressbar til MX

Jeg har en preloader, der viser "loader xx af xxKb. Den regner lidt mærkeligt, men måske den kan ombygges til progressbar, eller at nogen har en god kodestump. Det er til min zoomnavigation og kan ses i funktion på forsiden af avcnet.dk.
Nuværende progressbar:
stop();
createTextField("preloadTekst", 1, 200, 200, 0, 0);
with (preloadTekst) {
    selectable = false;
    autoSize = true;
    format = new TextFormat();
    format.font = "verdana";
    format.size = 14;
    format.color = 0x1c4848;
    setNewTextFormat(format);
}
total = Math.round((getBytesTotal()/1024));
onEnterFrame = function () {
    hentet = Math.round((getBytesLoaded()/1024));
    preloadTekst.text = "Loader ZoomNavigation "+(hentet-128)+"Kb af "+(total-128)+"Kb";
    if (total == hentet) {
        gotoAndPlay(2);
        preloadTekst.removeTextField();
        delete this.onEnterFrame;
    }
};
Avatar billede mat Nybegynder
31. marts 2003 - 17:29 #1
stop();
createTextField("preloadTekst", 1, 200, 200, 0, 0);
with (preloadTekst) {
    selectable = false;
    autoSize = true;
    format = new TextFormat();
    format.font = "verdana";
    format.size = 14;
    format.color = 0x1c4848;
    setNewTextFormat(format);
}
total = Math.round((getBytesTotal()/1024));
//*************************
progressBar._xscale = 0;
//*************************
onEnterFrame = function () {
    hentet = Math.round((getBytesLoaded()/1024));
//*************************
progressBar._xscale = hentet;
//*************************
    preloadTekst.text = "Loader ZoomNavigation "+(hentet-128)+"Kb af "+(total-128)+"Kb";
    if (total == hentet) {
        gotoAndPlay(2);
        preloadTekst.removeTextField();
        delete this.onEnterFrame;
    }
};

Du skal så have et movieclip der har instancenavn "progressBar". Det er ikke testet, men det burde virke :)
Avatar billede barklund Nybegynder
31. marts 2003 - 17:31 #2
Hvis du laver et movieclip med en tween strækkende over 100 frames, så er det det nemmeste:

total = Math.round((getBytesTotal()/1024));
onEnterFrame = function () {
    hentet = Math.round((getBytesLoaded()/1024));
    preloadMC.gotoAndStop(int(hentet/total * 100));
    if (total == hentet) {
        gotoAndPlay(2);
        delete this.onEnterFrame;
    }
};

Ellers kan de være et movieclip med en bar, der bare kan scales automatisk:

total = Math.round((getBytesTotal()/1024));
onEnterFrame = function () {
    hentet = Math.round((getBytesLoaded()/1024));
    preloadMC.bar._xscale = int(hentet/total * 100);
    if (total == hentet) {
        gotoAndPlay(2);
        delete this.onEnterFrame;
    }
};

/Barklund
Avatar billede para7 Nybegynder
31. marts 2003 - 22:13 #3
mat >
Jeg kan ikke få det til at ske noget med progressbaren. Jeg har oprettet et movieklip med navnet progressBar og placeret det i et layer for sig og kaldt det som du foreslår. Det burde da virke.
Avatar billede para7 Nybegynder
31. marts 2003 - 22:22 #4
barklund >
Tweenmetoden:
Den har jeg fået til at virke, men man skal kunne se hvor meget der mangler at loade. Dvs. hvis baren lå i en bar, der repræsenterede de 100% eller 86Kb. Jeg kan ikke lige gennemskue det, men der skal vel ligge et "100%-movieklip" med hensyn til om man kommer med modem eller bredbåndshastighed.

Scaling automatisk-metoden:
ligesom med mat's metode, kan jeg ikke få det til at ændre baren. Men det tiltaler mig ikke at have alle de 100 frames liggende.
Avatar billede barklund Nybegynder
01. april 2003 - 10:33 #5
Hvis du har navngivet dine instances korrekt, og du først har en instance med navnet "preloadMC" indeholdende en instance med navnet "bar", så skal det virke...
Avatar billede para7 Nybegynder
01. april 2003 - 15:30 #6
Tak til barklund >
ja,den preloadMC har jeg vist overset. Men i mellemtiden har jeg fundet en rigtig god komponent, som gør det hele mere enkelt: Bytes-based Preloaders
http://www.flashcomponents.net/component.cfm?nav=2&id=189 .
Avatar billede para7 Nybegynder
03. april 2003 - 12:23 #7
Så jeg lukker her..
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