Many people ask me very often how to build a dynamic preloader. Here is a first shot.
Comments are appreciated.
//import the classes from folder:
//C:\Program Files\Macromedia\Flash MX 2004\en\First Run\Classes\mx\controls
import mx.controls.ProgressBar;
import mx.controls.Loader;
//stop the timeline
stop();
//Create a Progressbar component:
createClassObject(ProgressBar, "pBar", 2);
pBar._x=200;
pBar._y=200;
//Create a Loader component
createClassObject(Loader, "loader", 3);
loader._x=200;
loader._y=200;
loader.visible = false;
//Create a listener
loadListener = new Object();
//create a progress function/handler
loadListener.progress = function(eventObj){
_root["pBar"].setProgress(_root.loader.bytesLoaded, _root.loader.bytesTotal); // show progress
}
loadListener.complete = function(eventObj){
pBar.visible=false;
loader.visible = true; //here code masks if you want more nice look
}
//add the progress-handlers to the loader
loader.addEventListener("complete", loadListener);
loader.addEventListener("progress", loadListener);
//load the swf file
loader.contentPath = "name.swf";
Flashhero