xterminator
%Europe/Berlin %072 %2005, 02:44
Ik heb problemen met dit stuk code. Het is de bedoeling dat 4 jpg files worden ingeladen, voorafgaand van een preloader. Het inladen van de jpg's lukt. Enkel het monitoren van het laden (de preloader dus) wil niet meewerken. De 4 preloader movieclips worden gemaakt en on stage gezet. Enkel de laaste werkt, de 3 vorige blijven op 0% staan.
Hier is de code:
for (i=0; i<4; i++) {
var pBar = this.createEmptyMovieClip("ProgressBar"+i, this.getNextHighestDepth());
pBar.createEmptyMovieClip("bar_mc", 1);
pBar.createEmptyMovieClip("stroke_mc", 2);
with (pBar.stroke_mc) {
lineStyle(0, 0x000000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
}
with (pBar.bar_mc) {
beginFill(0xFF0000, 100);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
endFill();
_xscale = 0;
}
pBar._x = 20*i;
pBar._y = 20*i;
//
var mclListener:Object = new Object();
mclListener.onLoadStart = function(target_mc:MovieClip) {
pBar.bar_mc._xscale = 0;
};
mclListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
pBar.bar_mc._xscale = Math.round(bytesLoaded/bytesTotal*100);
};
mclListener.onLoadComplete = function(target_mc:MovieClip) {
pBar.removeMovieClip();
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc._height = 320;
target_mc._width = 200;
};
var movImage:MovieClip = this.createEmptyMovieClip("image_mc"+i, this.getNextHighestDepth());
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.deurl.be/image"+i+".jpg", movImage);
movImage._x = 210*i;
}
Ik denk dat dit met het mclListener object te maken heeft, er wordt maar 1 object aangemaakt voor de 4 images, dus wordt er telkens maar het laaste object gemonitord. Ik zou eigenlijk 4 van die mclListener's moeten aanmaken afhankelijk van hoe de teller staat. Ik had gedacht om de variabele naam van mclListener afhankelijk van de teller te maken. Maar hoe moet ik dit doen. Dan wordt het dus iets in de aard van: var mclListener+i:Object = new Object(); en verder mclListener+i.onLoadStart .
Wat is hier de juiste syntax voor ?
Groetjes
Hier is de code:
for (i=0; i<4; i++) {
var pBar = this.createEmptyMovieClip("ProgressBar"+i, this.getNextHighestDepth());
pBar.createEmptyMovieClip("bar_mc", 1);
pBar.createEmptyMovieClip("stroke_mc", 2);
with (pBar.stroke_mc) {
lineStyle(0, 0x000000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
}
with (pBar.bar_mc) {
beginFill(0xFF0000, 100);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
endFill();
_xscale = 0;
}
pBar._x = 20*i;
pBar._y = 20*i;
//
var mclListener:Object = new Object();
mclListener.onLoadStart = function(target_mc:MovieClip) {
pBar.bar_mc._xscale = 0;
};
mclListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
pBar.bar_mc._xscale = Math.round(bytesLoaded/bytesTotal*100);
};
mclListener.onLoadComplete = function(target_mc:MovieClip) {
pBar.removeMovieClip();
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc._height = 320;
target_mc._width = 200;
};
var movImage:MovieClip = this.createEmptyMovieClip("image_mc"+i, this.getNextHighestDepth());
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.deurl.be/image"+i+".jpg", movImage);
movImage._x = 210*i;
}
Ik denk dat dit met het mclListener object te maken heeft, er wordt maar 1 object aangemaakt voor de 4 images, dus wordt er telkens maar het laaste object gemonitord. Ik zou eigenlijk 4 van die mclListener's moeten aanmaken afhankelijk van hoe de teller staat. Ik had gedacht om de variabele naam van mclListener afhankelijk van de teller te maken. Maar hoe moet ik dit doen. Dan wordt het dus iets in de aard van: var mclListener+i:Object = new Object(); en verder mclListener+i.onLoadStart .
Wat is hier de juiste syntax voor ?
Groetjes