Uso del componente Loader
Este componente nos permite cargar archivos externos .JPG o .SWF y monitorizar su carga, así como modificar algunas propiedades de visualización. Consta de un método para iniciar la carga, y dos eventos que nos sirven para controlar si está cargandose nuestro archivo y para saber si se ha cargado del todo.
Si ya habéis utilizado antes precargadores, veréis que este es bastante sencillo de configurar. Poner un componente Loader en vuestra biblioteca y añadir este código en vuestro fotograma:
//Atacheamos el componente
attachMovie("Loader", "mi_cargador", 1);
//Propiedades
mi_cargador.contentPath = "imagen.jpg";
mi_cargador.scaleContent = false;
mi_cargador.autoLoad = false;
//Evento del boton
boton_btn.onPress = function() {
//Atacheamos la barra e iniciamos la carga
attachMovie("barra", "barra_mc", 2);
mi_cargador.load();
};
Con autoLoad podemos controlar que no cargue nada más iniciar, para poder así usar luego el método load(), que es el que se encarga de ejecutar la carga. Si queréis para practicar podéis usar un componente Button, en vez de un botón normal y corriente.
Ahora crear un movieClip para que haga de barra de carga, y exportarlo para actionscript con el nombre de barra, el siguiente código se encargará del resto:
//Listener para comprobar la carga
mientrasCarga = new Object();
mientrasCarga.progress = function(evento) {
barra_mc._xscale = mi_cargador.percentLoaded;
trace(mi_cargador.bytesLoaded+" bytes cargados de "+mi_cargador.bytesTotal);
};
//Listener para comprobar si ha cargado del todo
alCargar = new Object();
alCargar.complete = function(evento) {
removeMovieClip(barra_mc);
trace("Has cargado la imagen "+mi_cargador.contentPath);
};
//Eventos
mi_cargador.addEventListener("progress", mientrasCarga);
mi_cargador.addEventListener("complete", alCargar);
El evento progress se va preocupando el solo de cuanto lleva cargado nuestro contenido, y así nosotros solo tenemos que escalar la barra con la propiedad percentLoaded. Para los que les guste mostrar los bytes cargados y totales pueden usar bytesLoaded y bytesTotal, propiedades de sólo lectura que nos dan los tamaños en bytes.
Al final del todo con el evento complete lo único que tenemos que hacer es borrar la barra y decir que se ha cargado la imagen x satisfactoriamente.
Un buen componente para hacer galerías, jeje.
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Publica tu comentario
El autor de este artículo ha cerrado los comentarios. Si tienes preguntas o comentarios, puedes hacerlos en el foro
Entra al foro y participa en la discusión
o puedes...
¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?
Inicia sesión
¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?
Registrate