Displaying load progress : Loader « Network « Flash / Flex / ActionScript

Home
Flash / Flex / ActionScript
1.Animation
2.Array
3.Class
4.Data Type
5.Development
6.Function
7.Graphics
8.Language
9.Network
10.Regular Expressions
11.Statement
12.String
13.TextField
14.XML
Flash / Flex / ActionScript » Network » Loader 




Displaying load progress
 
package {
  import flash.display.*;
  import flash.net.URLRequest;
  import flash.events.*
  import flash.text.*;

  public class Main extends Sprite {
    private var loader:Loader;             // The asset loader
    private var progressOutput:TextField;  // The text field in which
                                           // to display load progress
    public function Main () {
      createLoader();
      createProgressIndicator();
      load(new URLRequest("sunset.jpg"));
    }

    private function createLoader (  ):void {
      loader = new Loader(  );
      loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,
                                                progressListener);
      loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
                                                completeListener);
      loader.contentLoaderInfo.addEventListener(Event.INIT,
                                                initListener);
    }

    private function createProgressIndicator (  ):void {
      progressOutput  = new TextField(  );
      progressOutput.autoSize   = TextFieldAutoSize.LEFT;
      progressOutput.border     = true;
      progressOutput.background = true;
      progressOutput.selectable = false;
      progressOutput.text       = "LOADING...";
    }

    private function load (urlRequest:URLRequest):void {
      loader.load(urlRequest);
      if (!contains(progressOutput)) {
        addChild(progressOutput);
      }
    }

    // Listener invoked whenever data arrives
    private function progressListener (e:ProgressEvent):void {
      // Update progress indicator.
      progressOutput.text = "LOADING: "
                          + Math.floor(e.bytesLoaded / 1024)
                          "/" + Math.floor(e.bytesTotal / 1024" KB";
    }

    private function initListener (e:Event):void {
      addChild(loader.content);  // Add loaded asset to display list
    }

    private function completeListener (e:Event):void {
      removeChild(progressOutput);
    }
  }
}

        














Related examples in the same category
1.Main.Swf Listener Receives Notification for an Event Targeted at a Module.swf Display Object
2.Add mouse click listener to a loaded swf
3.Loading External Images at Runtime
4.Add event listener to content loader info
5.Loading and Interacting with External Movies
6.Adding a Loader to the display list
7.Load-error handling
8.Polling for the existence of a loaded object
9.Handling an event announcing a loaded object's availability
10.Load an image using Loader
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.