webForumDet fria alternativet

Preloader vägrar räkna!

Flash

8 svar · 451 visningar · startad av crisse6

Medlem sedan dec. 20002 526 inlägg
Frågan#1

Hej!

Sitter med en enkel preloader som ska räkna upp % av inladdad data på en bild som e linkad. Det den gör nu är att läsa in bilden, sen skriva ut 100, men det är ju inte rätt gubbar, eller hur?

Så nu behöver jag er hjälp. Check this out:


attachMovie("stor", "mcStor", this.getNextHighestDepth(), {_x:0, _y:0});

_root.onEnterFrame = function() {
var nPercent = Math.round((mcStor.getBytesLoaded()/mcStor.getBytesTotal()) * 100);
	trace (nPercent);
	if(nPercent>=100) {
		trace ("Bilden är nu laddad");
		delete _root.onEnterFrame;
	}
   
}
Medlem sedan maj 20021 558 inlägg
#2

Måste det inte vara blabla.attachMovie(blabla) ?

Medlem sedan dec. 20002 526 inlägg
#3

förstår inte vad du menar faktiskt. menar du this innan eller vad?

funkar ändå inte. fattar inte varför!!!

Medlem sedan maj 20021 558 inlägg
#4

Vad jag har förstått så ska det vara ett mc.
MC.attachMovie("mcId", "nyttnamn", etc)

R:
Usage
my_mc.attachMovie(idName, newName, depth [, initObject])

så säger flashhjälpen

Medlem sedan maj 2003750 inlägg
#5

Du måste inte ange någon path på attachMovie() Det går bra utan.

Däremot är det så att filmklipp som du attach:ar laddas per default före den första bildrutan. Så därför får du 100% direkt. Du behöver bara ha preloader på den om du laddar innehållet från en extern fil med loadMovie().

/Mirandir

Medlem sedan dec. 20002 526 inlägg
#6

Har försökt å göra så här nu med mcHolder.... men får NaN!

Check:

this.createEmptyMovieClip("mcHolder", this.getNextHighestDepth());
var mclLoader:MovieClipLoader = new MovieClipLoader();
mclLoader.loadClip("http://www.cris.se/temp/karlskrona.jpg", mcHolder);

//this.attachMovie("wall", "mcWall", this.getNextHighestDepth(), {_x:0, _y:0});

var nInterval:Number = setInterval(checkProgress,100);
function checkProgress():Void {
	var nPercent:Number = Math.round((mcHolder.getBytesLoaded()/mcHolder.getBytesTotal()) * 100);
	trace (nPercent);
	
}
Medlem sedan maj 2003750 inlägg
#7

Koden fungerar problem fritt när jag testar den i min Flash. Antagligen har du kod runt ikring som på ett eller annat sätt stör.

/Mirandir

Medlem sedan dec. 20002 526 inlägg
#8

Hmm... visar sig nu att den nog fungerar :) Anledningen att jag får ut NaN i början måste bero på att intervallen kör, men flash kanske inte fått kontakt med servern i samma ögonblick = därför kan NaN skrivas ut lite smått där i början. För sen funkar den å den räknar procent (för innan den har kontakt med servern så är ju nPercent=NaN)!

Medlem sedan maj 2005704 inlägg
#9

Kolla in MovieClipLoader.onLoadProgress() i Flash hjälpen.

262 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)