Foros del Web » Creando para Internet » Flash y Actionscript »

Preloader porcentaje

Estas en el tema de Preloader porcentaje en el foro de Flash y Actionscript en Foros del Web. Hola a todos: Tengo un problema con un preloader que quiero hacer en flash con una barra y el porcentaje que queda por cargar la ...
  #1 (permalink)  
Antiguo 16/02/2005, 09:52
 
Fecha de Ingreso: diciembre-2003
Mensajes: 71
Antigüedad: 20 años, 4 meses
Puntos: 0
Preloader porcentaje

Hola a todos:
Tengo un problema con un preloader que quiero hacer en flash con una barra y el porcentaje que queda por cargar la escena. He probao todos los códigos que he encontrado y nada.
Esto es lo que estoy haciendo, a ver si alguien ve el fallo:
Tengo dos escenas, una con el preloader y otra con la pelicula (Escena 1).
En la escena del preloader tengo dos frames, en el primero tengo este código:

//==============================
//Percentage Loaded
//==============================
percent = Math.round((_root.getBytesLoaded()/_root.getBytesTotal())*100) add "%";

//==============================
//Speed
//==============================
varSpeed = (Math.round((_root.getBytesLoaded()/varElapsedTime/1024)*10))/10;



//==============================
//Loading Bar
//==============================
varMove = Math.Round((_root.getBytesLoaded()/_root.getBytesTotal())*458.8)

setProperty ("_root.indicador",_x,-59.4+varMove);

y en el segundo, este:

// ==============================
// Loading Done Check
// ==============================
if (_root.getBytesLoaded() == _root.getBytesTotal()) {
gotoAndPlay ("Escena 1", 1);
} else {
gotoAndPlay (1);
}

la caja de texto donde va el porcentaje se llama "percent" y la barra que aunmenta de tamaño se llama "indicador".

¿Alguien me puede ayudar?
  #2 (permalink)  
Antiguo 16/02/2005, 10:00
Avatar de Sette  
Fecha de Ingreso: febrero-2002
Mensajes: 1.747
Antigüedad: 22 años, 2 meses
Puntos: 3
yo tb lo quiero si alguien nos pasara un fla
__________________
diseño y programación
http://www.manucastro.es
[email protected]
  #3 (permalink)  
Antiguo 16/02/2005, 19:47
Avatar de thewayox  
Fecha de Ingreso: diciembre-2004
Ubicación: Guaro, Vzla
Mensajes: 189
Antigüedad: 19 años, 4 meses
Puntos: 3
Para mi, el mejor es este:

1.- En el primer frame del layer acciones:

Código HTML:
bytes_loaded = Math.round(this.getBytesLoaded());
bytes_total = Math.round(this.getBytesTotal());
getPercent = bytes_loaded/bytes_total;
this.loadBar._width = getPercent*100;
this.loadText = Math.round(getPercent*100)+"% cargado";
if (bytes_loaded == bytes_total) {
	this.gotoAndPlay(3);
}
2.- En el segundo frame del layer acciones:

Código HTML:
this.gotoAndPlay(1);
En otros layers, los mc's son:

Barra de Carga:
Le colocar como InstanceName loadBar
Debes colocar como registration point el centro izquierda para que se vaya llenando en sentido izq-der.

Cuadro de Texto de Carga:
Le colocas en el campo var loadText
Respeta las mayusculas para que no tengas problemas.

Crea un mc de nombre borderBar para delimitar el archivo y asi veas desde y hasta donde se llena la barra de carga.

Eso es todo, si me da tiempo hoy coloco un archivo para que lo decaragues y lo veas mejor, adelanta con esto que te envio y me dices que tal!

Saludos.
__________________
EL PODER CORROMPE, EL PODER ABSOLUTO CORROMPE ABSOLUTO. EL CONOCIMIENTO ES PODER MAS NO ES SABIDURIA, MANEJALO SABIAMENTE O TE CORROMPE
  #4 (permalink)  
Antiguo 16/02/2005, 19:50
Avatar de heberto  
Fecha de Ingreso: septiembre-2004
Ubicación: Morelia, Michoacán
Mensajes: 104
Antigüedad: 19 años, 7 meses
Puntos: 0
Preloader rapido con barra de incremento...

Saludos!

Aqui les pongo lo necesario para que puedan hacer una escena de precarga con todo y porcentajes y barra indicadora, espero les sirva...

Pasos a seguir:

1.- En el escenario dibujen un rectangulo.
2.- Seleccionen dicho rectangulo y conviertanlo a simbolo de tipo MovieClip, verifiquen que el punto de regiustro este localizado en la parte central-izquierda (osease el segundo puntito de la primera columna)
3.- Seleccionen de nuevo la barrita y agreguenle el nombre de instancia "Barra" (Esto es en el panel propiedades)
4.- Vean cuanto mide de ancho dicha barra en el panel propiedades, para el ejemplo vamos a suponer que mi barrita mide 200 pixeles de ancho.
5.- Insertamos una caja de texto DINAMICO y le damos tambien un nombre de instancia, en este caso "txtPorcentaje"
6.- Insertamos una capa nueva y seleccionamos el primer Frame
7.- Presionamos la tecla F9.
8.- En el panel Acciones tecleen el siguiente código

Código:
//Obtenemos el tamaño completo de la pelicula
Total=_root.getBytesTotal();

//Obtenemos los bytes que se han cargado actualmente
Cargados=_root.getBytesLoaded();

//Obtenemos el porcentaje mediante una operacion matematica y lo redondeamos
Porcentaje=Math.round(((Cargados*100)/Total));

//Desplegamos el porcentaje en el cuadro de texto dinamico
txtPorcentaje.text=Porcentaje + "%";

//Ahora obtenemos el tamaño de la barra
Barra._width=Math.round(((Porcentaje*200)/100));

//Verificamos que se haya cargado al 100% nuestra pelicula
if(Porcentaje==100){
	//Saltamos a la Escena en la que queremos iniciar
	_root.gotoAndPlay("Escena 2",1);
}
Y para que esto se este veridficando constante mente, habra que añadir un nuevo frame en la misma linea de tiempo.

Espero haberme dado a explicar, si tienen alguna duda, mandenme un correo a mi direccion de yahoo, saludos

Recuerden que la escena de precarga debe de estar antes que todas, por lo cual eso lo deben de checar en el panel Escena (Shift+f2)
__________________
Atte.

Ing. Julio Heberto Gonzalez Morales
Certified Macromedia Flash MX Designer
  #5 (permalink)  
Antiguo 17/02/2005, 02:55
 
Fecha de Ingreso: diciembre-2003
Mensajes: 71
Antigüedad: 20 años, 4 meses
Puntos: 0
Hola a todos:

Gracias por la ayuda pero creo q soy un poco dura de moyera y no me sale ni a tiros.
He utilizado el código de Heberto, la barra sí crece pero en la caja de texto aparece un 3% que no se mueve y no se carga la escena. En el segundo frame he puesto este código:
_root.gotoAndPlay(1);

Algo estoy haciendo mal...
  #6 (permalink)  
Antiguo 17/02/2005, 12:54
Avatar de heberto  
Fecha de Ingreso: septiembre-2004
Ubicación: Morelia, Michoacán
Mensajes: 104
Antigüedad: 19 años, 7 meses
Puntos: 0
te lo envio por correo

Mandamer un correo y te lo envio de vuelta...

Saludos : )
__________________
Atte.

Ing. Julio Heberto Gonzalez Morales
Certified Macromedia Flash MX Designer
  #7 (permalink)  
Antiguo 17/02/2005, 13:02
Avatar de Sette  
Fecha de Ingreso: febrero-2002
Mensajes: 1.747
Antigüedad: 22 años, 2 meses
Puntos: 3
yo tb lo quiero settewebgmail.com
__________________
diseño y programación
http://www.manucastro.es
[email protected]
  #8 (permalink)  
Antiguo 17/02/2005, 13:40
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Hola

Yo podria reducir todos los scripts de arriba del siguiente modo:

Código:
percent = Math.floor(getBytesLoaded()/getBytesTotal()*100);
cargado = percent+"% cargado";
barra._yscale = percent;
//
if (percent == 100) {
	gotoAndPlay("tu_escena",1);
} else {
	gotoAndPlay(1);
}
Este script se pone en el frame 2 de tu escena loader y se explica muy facil.

percent: es quien calcula los bytes cargados por la animacion.
cargado: es un campo de texto que se pone en el stage y tiene este nombre de variable. Su resultado seria "28% cargado"... "29% cargado"... etc.
barra: es tu barra en condicion de movieclip, que aumenta su tamaño en relacion al porciento cargado por "percent".
if (percent == 100): verifica que si "percent" es igual a 100 que salte al frame 1 de la escena con tu animacion, de lo contrario regrese al frame 1 en la escena actual (loader).

Finalmente, se pone en el frame 2, porque si "percent" aun no ha completado 100 y obliga a devolverse entonces al frame 1, al entrar nuevamente al frame 2, se vuelve a actualizar "percent" mas la barra y el campo "cargado".

Espero sirva para tus intereses
__________________
JuniHH
- Mi blog
- Mi portafolio
  #9 (permalink)  
Antiguo 20/02/2005, 15:56
Avatar de thewayox  
Fecha de Ingreso: diciembre-2004
Ubicación: Guaro, Vzla
Mensajes: 189
Antigüedad: 19 años, 4 meses
Puntos: 3
bajen el archivo

Bueno amigos, aqui coloque el ejemplo que puse arriba, esta funcionando correctamente, esta probado por varias personas...

Espero que les sirva...

http://www.webpa.com.ve/fdw/

Saludos.

Ah! esta hecho en FLASHMX2004.
__________________
EL PODER CORROMPE, EL PODER ABSOLUTO CORROMPE ABSOLUTO. EL CONOCIMIENTO ES PODER MAS NO ES SABIDURIA, MANEJALO SABIAMENTE O TE CORROMPE
  #10 (permalink)  
Antiguo 21/02/2005, 09:59
Avatar de Sette  
Fecha de Ingreso: febrero-2002
Mensajes: 1.747
Antigüedad: 22 años, 2 meses
Puntos: 3
está increible, muchas gracias
__________________
diseño y programación
http://www.manucastro.es
[email protected]
  #11 (permalink)  
Antiguo 21/02/2005, 13:12
 
Fecha de Ingreso: diciembre-2003
Mensajes: 71
Antigüedad: 20 años, 4 meses
Puntos: 0
Hola otra vez!

Me he bajado el .fla pero no me lo abre, creo q es pq tengo el Flash MX y no el 2004, ¿puede ser?
  #12 (permalink)  
Antiguo 21/02/2005, 14:50
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Correcto

Puedes ir al sitio de Macromedia y bajar una copia de prueba. Asi podras convertir ese ejemplo al MX al mismo tiempo probar el 2004.
__________________
JuniHH
- Mi blog
- Mi portafolio
  #13 (permalink)  
Antiguo 22/02/2005, 14:41
 
Fecha de Ingreso: diciembre-2003
Mensajes: 71
Antigüedad: 20 años, 4 meses
Puntos: 0
Por fin! bueno, casi...

Hola a todos otra vez!

Ya parece que me funciona la precarga con este código:

porcentaje = int((_framesloaded/_totalframes)*100);
txtporcentaje = porcentaje add "%";
setProperty("/barra", _xscale, porcentaje);
ifFrameLoaded("Escena 1", 145){
gotoAndPlay ("Escena 1", 1);
}

Pero, hay un problema, como no...El porcentaje llega a 84 y se carga la segunda escena en vez de llegar al 100%, ¿alguien sabe por qué?
  #14 (permalink)  
Antiguo 22/02/2005, 15:27
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Que tal si mejor lo usas asi:
Código:
porcentaje = Math.floor(getBytesLoaded()/getBytesTotal()*100)
txtporcentaje = porcentaje + "%";
barra._xscale = porcentaje;
if (porcentaje == 100){
		gotoAndPlay ("Escena 1", 1);
} else {
		gotoAndPlay (1);
Eso lo pones en el frame 2 y ya.
__________________
JuniHH
- Mi blog
- Mi portafolio
  #15 (permalink)  
Antiguo 23/02/2005, 15:07
 
Fecha de Ingreso: diciembre-2003
Mensajes: 71
Antigüedad: 20 años, 4 meses
Puntos: 0
Hola JuniHH!

He usado el script q me has sugerido pero me sigue pasando lo mismo con el porcentaje, cuando llega al 84% se carga la escena...:(
  #16 (permalink)  
Antiguo 23/02/2005, 15:17
 
Fecha de Ingreso: diciembre-2003
Mensajes: 71
Antigüedad: 20 años, 4 meses
Puntos: 0
No tendrá que ver con la anchura de la barra, no? la mía mide 200 pixeles...
  #17 (permalink)  
Antiguo 23/02/2005, 20:43
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Ya que mencionas lo de la barra... estas usando la barra al tamaño real en que la creaste ???... ... o sea, si la barra originalmente tiene 100 pixeles de ancho y tu lo agrandas a 200 pixeles, puede suceder eso de no mostrar correctamente el porciento cargado.

A mi me ha sucedido eso, que cuando tengo la barra a un tamaño y lo agrando mas de su tamaño original, ella muestra un porciento de carga diferente. Lo que hago entonces es que si la necesito a ese tamaño, pues simplemente convierto la barra a MC a ese tamaño y se porta de maravilla.
__________________
JuniHH
- Mi blog
- Mi portafolio

Última edición por junihh; 23/02/2005 a las 20:50
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:57.