Avatar billede lokum Nybegynder
03. oktober 2002 - 16:28 Der er 8 kommentarer og
1 løsning

getBytesLoaded til jpg (MX)

Så vidt jeg netop har erfaret, så virker getBytesLoaded()/Total() ikke til loadMovie("blop.jpg", mc-sti) i MX - men derimod kun til swf's?

Er dette sandt eller forkert?

Hvis forkert, hvad kan det så skyldes at min preloader ikke virker.

Hvis sandt, hvordan får jeg så skruet sagerne sammen??

Preloader:

onClipEvent(enterFrame){
    loaded=_root.fotos2.resize1.mc.getBytesLoaded();
    total=_root.fotos2.resize1.mc.getBytesTotal();
    _root.percent=(int((loaded/total)*100))+"%";

    if((loaded>=total)&&(total>100)){
        _root.percent="";
    }
}

Store kys
¨lokum.
Avatar billede pyroman Nybegynder
03. oktober 2002 - 20:04 #1
Jeg ved ikke om det har nogen betydning, men du kan i hvert fald ændre
_root.percent = (int ((loaded/total)*100)+"%";
til
_root.percent = int (loaded/total*100)+"%";

Hvis du laver en film som kun indeholder dit billede kalder filmen f.eks. "blop" og eksportere den som swf.
I din hovedfilm laver du et MC der har samme størrelse som dit billede og sætter det hvor du vil have det, samt giver det instancenavnet "etellerandet". I første frame skriver du:
loadMovie ("Blop.swf", "etellerandet");
loaded = etellerandet.getBytesLoaded ();
total = etellerandet.getBytesTotal ();
percent = int (loaded/total*100) + "%";

Det skulle kunne virke, hvis jeg husker rigtigt

/Filip
Avatar billede lokum Nybegynder
03. oktober 2002 - 21:37 #2
pyroman > Meget fint. Men har du nu læst mit spørgsmål ordentligt?

Jeg skal loade et .jpg (i MX) og preloaderen virker ikke.
Preloaderen virker fint med en .swf - jeg antager derfor at jeg skal gøre tingene anderledes når jeg har med et .jpg at gøre. Men hvad?
Avatar billede lokum Nybegynder
04. oktober 2002 - 17:16 #3
Hrm...
Avatar billede jerving Nybegynder
04. oktober 2002 - 17:31 #4
Lad os sige at du vil loade blop.jpg ind i et MC, vi kalder "imgHolder" og at din loader hedder "loader1"

Det er mere overskueligt i MX at lægge al din kode i et layer for sig og dette referere til dine instances, med mindre det er strengt nødvendigt m. onClipEvent().

Skriv følgende i en tom frame i dit actionLayer

loadMovie("blop.jpg",imgHolder);

Nu laver du så en ChangeHandler:

loader1.setChangeHandler("imgProgress1");

Sætter loader1 til at beregne uploadern i mc'et imgHoder:

loader1.setLoadTarget(imgHolder);

Og bruger så changehandleren ex:

function imgProgress1(){
    if (loader1.getPercentComplete()==100) { 
  play();
}
}
stop();

Det der dog er så deligt hjernedødt ved MX er at componenten ikke kan fungere når du uploader det til en server uden at du skriver den urelative url på billedet ex.:

loadMovie("http://www.mitwebsite.dk/img/img1.jpg",imgHolder);

Håber at du kan bruge det - virker for mig :o)
Avatar billede lokum Nybegynder
04. oktober 2002 - 23:59 #5
Hej jerving >>> Du benytter et par funktioner som jeg ikke har set før.

1. Det er optimalt for mig at benytte onClipEvent, da min "tidslinje" står stille på mc'et, som fotoet loades til (imgHolder). Men det er vel i princippet også ligegyldigt?

2. Kan jeg ikke bare bruge mit script (øverst) hvis jeg angiver en "urelativ" sti, så? Eller er getBytesLoaded()/Total() out of date??

3. Hvor har du iøvrigt getPercentComplete fra?

(Du skal nok få de 35 point hvis du hjælper mig med denne her.)

(o:
Avatar billede lokum Nybegynder
07. oktober 2002 - 10:52 #6
Hej igen jerving. Nu har jeg fået det til at virke, mit ovenstående script med relativ URL, osv.

Jeg gemte bare min fil som flashplayer 6, he he... (det skal man lige huske inde i publish settings - den står åbenbart default på flashplayer 5, hvis filen oprindelig er der fra!)
Avatar billede jerving Nybegynder
07. oktober 2002 - 16:43 #7
He, he, sorry - glemte helt at vende tilbage. Men det lyder jo som om du har fået styr på det ;o). App. dit spørgsmål om hvor jeg får getPercentLoaded fra, så er det netop det der er smart ved MM's indbyggede loader komponent - at man ikke behøver ledegøre disse linder, da funktionerne er en del af komponenten.

Noget helt andet,.. har du prøvet at køre den på din server - virker den med relativ URL? - cool hvis du har, det kan denne komponent ikke udføre.

Mvh.

Jerving
Avatar billede lokum Nybegynder
07. oktober 2002 - 22:57 #8
Hey, når du nu skriver "MM's indbyggede loader komponent" - ? - så ved jeg for det første ikke hvad MM er - Macromedia? Men jeg vil da meget gerne vide mere...

Ja, min swf kører fuld skrue på en ekstern server, med en variabel og relativ sti (website med dynamisk upload af billeder). Og det virker fint.
(-;
Og det er altså bare den go'e gamle getBytesLoaded() og Total()
Avatar billede jerving Nybegynder
08. oktober 2002 - 14:06 #9
Fantastisk, det kan Macromedia's (ja MM's) komponent ikke udføre korrekt, så det er da herligt at vide at man bare kan lave en klassisk loader selv, der funker til det formål - så lærte jeg også noget vigtigt.

MM's loader er et drag n' drop loaderkomponent, der fremgår under Components som "ProgressBar". Finder du den ikke her er det fordi du mangler at hente "Flash UI Components Set 2" inde fra Macromedia Flash Exchange. Du kan hente den ved at gå op i panelet "Help" og herunder vælge "Flash Exchange" (husk først at hente den nyeste verson af Extetion Manager).

Held og lykke m. sitet.

Jerving
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