package
{
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
public class Main extends Sprite
{
private var loader:URLLoader = new URLLoader(new URLRequest("http://example.com/huge.xml"));
private var total:Sprite = new Sprite();
private var loaded:Sprite = new Sprite();
public function Main()
{
total.graphics.beginFill(0xff0000, 1);
total.graphics.drawRect(0, 0, 200, 10);
total.graphics.endFill();
addChild(total);
total.y = 200;
total.x = 100;
addChild(loaded);
loaded.y = 200;
loaded.x = 100;
loader.addEventListener(Event.OPEN, openListener);
loader.addEventListener(Event.COMPLETE, completeListener);
loader.addEventListener(ProgressEvent.PROGRESS, progressListener);
}
private function openListener(event:Event):void
{
trace(" opened " + loader.bytesLoaded + " but nothing loaded yet ");
}
private function completeListener(event:Event):void
{
trace(" all done loading " + loader.data + " and here's the xml file we loaded ");
}
private function progressListener(event:Event):void
{
var amount:Number = (loader.bytesLoaded / loader.bytesTotal) * 200;
loaded.graphics.clear();
loaded.graphics.beginFill(0x00ff00, 1);
loaded.graphics.drawRect(0, 0, amount, 10);
loaded.graphics.endFill();
}
}
}