ActionScript 2.0 Components Language Reference |
|
|
|
| Loader component > Loader.progress | |||
Flash Player 6 (6.0.79.0).
Flash MX 2004.
Usage 1:
var listenerObject:Object= new Object();listenerObject.progress = function(eventObj:Object) {// ...};loaderInstance.addEventListener("progress",listenerObject);
Usage 2:
on (progress) {
// ...
}
Event; broadcast to all registered listeners while content is loading. This event occurs when the load is triggered by the autoload parameter or by a call to Loader.load(). The progress event is not always broadcast, and the complete event may be broadcast without any progress events being dispatched. This can happen if the loaded content is a local file.
The first usage example uses a dispatcher/listener event model. A component instance (loaderInstance) dispatches an event (in this case, progress) and the event is handled by a function, also called a handler, on a listener object (listenerObject) that you create. You define a method with the same name as the event on the listener object; the method is called when the event is triggered. When the event is triggered, it automatically passes an event object (eventObject) to the listener object method. Each event object has properties that contain information about the event. You can use these properties to write code that handles the event. Finally, you call the EventDispatcher.addEventListener() method on the component instance that broadcasts the event to register the listener with the instance. When the instance dispatches the event, the listener is called.
For more information, see EventDispatcher class.
The second usage example uses an on() handler and must be attached directly to a Loader instance. The keyword this, used inside an on() handler attached to a component, refers to the component instance. For example, the following code, attached to the Loader instance myLoaderComponent, sends "_level0.myLoaderComponent" to the Output panel:
on (progress) {
trace(this);
}
The following code creates a Loader instance and then creates a listener object with an event handler for the progress event that sends a message to the Output panel telling what percent of the content has loaded:
//Create loader instance.
this.createClassObject(mx.controls.Loader, "my_ldr", 10);
//Create listener object.
var loaderListener:Object = new Object();
loaderListener.progress = function(evt_obj:Object){
// evt_obj.target is the component that generated the progress event,
// that is, the loader.
trace("image is " + my_ldr.percentLoaded + "% loaded.");
}
//Add Listener.
my_ldr.addEventListener("progress", loaderListener);
//Assign content path of loader.
my_ldr.contentPath = "http://www.flash-mx.com/images/image1.jpg";
|
|
|
|