El problema es que me funciona únicamente si el Moviclip en donde voy a cargar el contenido lo creo mediante la función: CreateEmptyMovieClip. Pero yo necesito tenerlo creado en el escenario. Si lo hago con un mc que esté en el escenario la barra de progreso aparece pero queda en 0%.
Cree una función para hacer más simple la aplicación de un componente progressbar a cualquier movieclip, cuyo primer parámetro es el moviclip que cargará el contenido y el segundo es el lugar desde donde es llamado, osea: _root, this, _lavel0, etc.
Probablemente el código esté un poco desordenado y no sea nada optimo, esto es porque estuve haciendo muchísimas pruebas para ver si funcionaba y ahora estoy rendido.
Código :
function barraDeProgreso(elemento, desde)
{
var cargando;
desde.attachMovie("ProgressBar", "barraCargando", 1);
var my_lv:LoadVars = new LoadVars();
loadvars_pb.mode = "manual";
cargando = desde.barraCargando;
cargando._y = 230;
cargando._x = 14;
cargando.direction = "rigth";
cargando.conversion = 1024;
cargando.label = "Cargando %1kb de %2kb";
cargando.labelPlacement = "top";
cargando.mode = "polled";
cargando.source = elemento;
//Listener para cuando esta cargando la imagen
var alCargar = new Object();
alCargar.onLoadProgress = function(evento)
{
_root.mensaje.text = my_lv.getBytesTotal();
cargando.setProgress(getBytesLoaded, getBytesTotal);
};
//Listener para cuando acaba de cargar la imagen
var alAcabar;
alAcabar = new Object();
alAcabar.complete = function(evento)
{
trace(_global.c++);
_root.mensaje.text = _global.c++;
removeMovieClip(cargando);
};
//Eventos
cargando.addEventListener("progress", alCargar);
cargando.addEventListener("complete", alAcabar);
}
