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

preloader-barra

Estas en el tema de preloader-barra en el foro de Flash y Actionscript en Foros del Web. Hola a todos, tengo una pregunta bastante sencilla, tengo un preloader que es un mc en el primer fotograma de mi pelicula con el siguiente ...
  #1 (permalink)  
Antiguo 27/02/2006, 04:05
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
preloader-barra

Hola a todos, tengo una pregunta bastante sencilla, tengo un preloader que es un mc en el primer fotograma de mi pelicula con el siguiente codigo:


onClipEvent (enterFrame) {
with (this._parent) {
porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
porcentaje_txt.text = "Cargando "+Math.round(getBytesTotal()/1024)+" Kb "+porcentaje+"%";
if(porcentaje == 100){
this._parent.gotoAndPlay(_currentframe+1);
}
}
}

funciona bien, pero desearia que la la animacion de la barra y el porcentaje fueran iguales, no como ahora que llegta al 100% y pasa al fotograma siguiente con la barra por la mitad o aun peor llega al final varias veces?


Alguna idea?


Muchas gracias

G
__________________
http://www.gnarvaez.com
  #2 (permalink)  
Antiguo 27/02/2006, 04:21
 
Fecha de Ingreso: noviembre-2005
Mensajes: 128
Antigüedad: 19 años
Puntos: 0
Prueba con esto


onClipEvent (load) {
_root.stop();
}
onClipEvent (enterFrame) {
var totalk = _root.getBytesTotal()/1024;
var loadedk = _root.getBytesLoaded()/1024;
var percent = Math.round((loadedk/totalk)*100);
if (percent<100) {
_parent.txt = "cargando interface: <br/><b>" add percent add "</b>%";
_parent.txtrestante = "bites restantes: " add Math.round(totalk-loadedk);
_xscale = percent;
} else {
_root.play();
}
  #3 (permalink)  
Antiguo 27/02/2006, 04:22
 
Fecha de Ingreso: noviembre-2005
Mensajes: 128
Antigüedad: 19 años
Puntos: 0
A pero esto se lo pones al movie clip eh? no al primer fotograma
  #4 (permalink)  
Antiguo 27/02/2006, 04:36
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
Hola goizgoiz, gracias por responder, pero no ha funcionado sigue pasando lo mismo.-......
__________________
http://www.gnarvaez.com
  #5 (permalink)  
Antiguo 27/02/2006, 05:04
Avatar de lucasiramos  
Fecha de Ingreso: agosto-2004
Ubicación: Santa Rosa, La Pampa, Argentina
Mensajes: 1.484
Antigüedad: 20 años, 3 meses
Puntos: 13
Hola luzin, no he visto el código para manejar el ancho de la barra, aca te dejo un link para armar el preloader.

Espero te sirva.
Saludos. Lucas
  #6 (permalink)  
Antiguo 27/02/2006, 05:49
Avatar de miska_autentica  
Fecha de Ingreso: julio-2005
Ubicación: Valencia | Mediterráneo
Mensajes: 1.452
Antigüedad: 19 años, 4 meses
Puntos: 7
Vaya!! Lucas que bueno! Se agradece que haya gente como tú.
Muchas gracias. A mi también me ha servido.
Un saludo.
__________________
Ella está en el horizonte -dice Fernando Birri-. Me acerco dos pasos, ella se aleja dos pasos. Camino diez pasos y el horizonte se corre diez pasos más allá. Por mucho que yo camine, nunca la alcanzaré. ¿Para que sirve la utopía? Para eso sirve: para caminar.
-Eduardo Galeano-
  #7 (permalink)  
Antiguo 27/02/2006, 06:39
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
Hola, gracias a todos por responder, pero no consigo dar con la solucion, con todos los scripts me paso lo mismo, la carga dura menos que la animacion, y se pierde toda la gracia.....alguna idea mas por ahi? o un fla?

muchas gracias a todos

G
__________________
http://www.gnarvaez.com
  #8 (permalink)  
Antiguo 27/02/2006, 06:39
Avatar de lucasiramos  
Fecha de Ingreso: agosto-2004
Ubicación: Santa Rosa, La Pampa, Argentina
Mensajes: 1.484
Antigüedad: 20 años, 3 meses
Puntos: 13
Me alegro que haya servido Miska!
Saludos. Lucas
  #9 (permalink)  
Antiguo 27/02/2006, 09:07
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
lucasiramos:
muy bueno el link, yo justamente deje una duda respecto a precarga..pregunto como seria si yo armo la precarga que esta en tu tutorial en la 1º escena que la llamo precarga y mi pelicula esta en la escena siguiente que yo la llamo Escena 1.
Desde ya agardecida...
Silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #10 (permalink)  
Antiguo 27/02/2006, 09:19
Avatar de lucasiramos  
Fecha de Ingreso: agosto-2004
Ubicación: Santa Rosa, La Pampa, Argentina
Mensajes: 1.484
Antigüedad: 20 años, 3 meses
Puntos: 13
Hola Silvi@. Honestamente nunca he trabajado con Escenas, ni he leido como funcionan, asi que te voy a deber la explicación. Pero aca hay gente que sabe muuuucho mas que yo, que seguro te da una manito.

Saludos. Lucas
  #11 (permalink)  
Antiguo 27/02/2006, 09:49
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 19 años, 1 mes
Puntos: 1

Siguiendo el tutorial de lucasiramos podrias cambiar un poco el codigo del MovieClip:

Código:
onClipEvent (enterFrame) {
	with (_parent) {
		porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
		this.barra._xscale=porcentaje;
		porcentaje_txt.text = porcentaje+"% Cargado";
		if(porcentaje == 100){
			gotoAndPlay(_currentframe+1);
			_parent.play();
		}
	}
}
Creo que con el _parent.play(); seria suficiente... (sino prueba con _root o quitando el _parent)

ArgoN
  #12 (permalink)  
Antiguo 27/02/2006, 12:02
 
Fecha de Ingreso: octubre-2005
Ubicación: - Bs. As.-Argentina
Mensajes: 75
Antigüedad: 19 años, 1 mes
Puntos: 0
Argon
Lo voy a probar
las opciones serian
_parent.play()
o
_root.play()
o solo
play()
graciasss!!
Silvi@
__________________
"Dios existe, pero a veces duerme:
sus pesadillas son Nuestra existencia..."
Ernesto Sabato
  #13 (permalink)  
Antiguo 28/02/2006, 04:03
 
Fecha de Ingreso: febrero-2006
Mensajes: 11
Antigüedad: 18 años, 8 meses
Puntos: 0
Argon, lo he intentado de las 3 maneras y nada de nada. Y no creas q copio y pego, sino que trato de buscarle la lógica al asunto, porque lo que realmente quiero hacer es una precarga pero con el logotipo de la empresa...
  #14 (permalink)  
Antiguo 28/02/2006, 10:59
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 19 años, 1 mes
Puntos: 1
Entonces modifica tu codigo asi, yo siempre soy partidario de colocar todo AS en un frame (si es posible). Coloca esto en el primer frame de la primera escena:

Código:
this.onEnterFrame = function() {
	porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
	barra._xscale=porcentaje;
	porcentaje_txt.text = porcentaje+"% Cargado";
	if(porcentaje == 100){
		play();
	}
}
stop();
ArgoN
  #15 (permalink)  
Antiguo 28/02/2006, 11:01
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
Hola, veo muchas respuestas....pero nadie sabe realmente como sincronizar la carga total de la animacion con el 100 cargado? ....


gracias

G:
__________________
http://www.gnarvaez.com
  #16 (permalink)  
Antiguo 28/02/2006, 11:04
Avatar de lucasiramos  
Fecha de Ingreso: agosto-2004
Ubicación: Santa Rosa, La Pampa, Argentina
Mensajes: 1.484
Antigüedad: 20 años, 3 meses
Puntos: 13
Hola Luzin. Fijate el link que te puse en el post #5, con eso debiera andar.

Saludos. Lucas
  #17 (permalink)  
Antiguo 28/02/2006, 11:06
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
gracias lucas. lo has probado?¿ lo intente y no me funcionaba bien, no hay otra manera para hacerlo desde AS?

gracias


G.
__________________
http://www.gnarvaez.com
  #18 (permalink)  
Antiguo 28/02/2006, 11:06
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 19 años, 1 mes
Puntos: 1
Cita:
Iniciado por luzin
Hola, veo muchas respuestas....pero nadie sabe realmente como sincronizar la carga total de la animacion con el 100 cargado? ....


gracias

G:
¿Que quieres decir con: sincronizar la carga total de la animacion con el 100 cargado?

Código:
porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
porcentaje, dentro del bucle onEnterFrame te va dando el porcentaje total cargado de la propia pelicula que se esta cargando. Si quisieras calcular el porcentaje cargado de un .swf cargado en una pelicula principal deberias colocar:

Código:
porcentaje = Math.round((tu_mc.getBytesLoaded()/tu_mc.getBytesTotal())*100);
  #19 (permalink)  
Antiguo 28/02/2006, 11:10
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
ArgoN, gracias por la respuesta tan rapida, me refiero con sincronizar a que, la animacion q en mi caso es una barra de 100 fotogramas se llene a la vez que llega al 100% de la carga. Ahora mismo se carga toda la pelicula cuando la barra anda por el fotograma 30 como mucho (casi vacia).

no he probado lo que has posteado, sirve para eso que digo?¿


Muchas gracias a todos

G:
__________________
http://www.gnarvaez.com
  #20 (permalink)  
Antiguo 28/02/2006, 11:10
Avatar de SAPINTO  
Fecha de Ingreso: junio-2005
Ubicación: just another fucked up pl
Mensajes: 777
Antigüedad: 19 años, 5 meses
Puntos: 0
Cita:
Iniciado por -=ArgoN=-
Entonces modifica tu codigo asi, yo siempre soy partidario de colocar todo AS en un frame (si es posible). Coloca esto en el primer frame de la primera escena:

Código:
this.onEnterFrame = function() {
	porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
	barra._xscale=porcentaje;
	porcentaje_txt.text = porcentaje+"% Cargado";
	if(porcentaje == 100){
		play();
	}
}
stop();
ArgoN

ese codigo funciona, verifica los nombres de instancia del texto dinamico y del mc. si aun no te resulta, ve al link que te puso lucas, ahi sale como hacer una precarga desde 0.
__________________
if(user=="female" && user>="hot"){
user.gotoAndStop("sapinto's bed");
}
mi portafolio
  #21 (permalink)  
Antiguo 28/02/2006, 11:12
Avatar de SAPINTO  
Fecha de Ingreso: junio-2005
Ubicación: just another fucked up pl
Mensajes: 777
Antigüedad: 19 años, 5 meses
Puntos: 0
Cita:
Iniciado por luzin
ArgoN, gracias por la respuesta tan rapida, me refiero con sincronizar a que, la animacion q en mi caso es una barra de 100 fotogramas se llene a la vez que llega al 100% de la carga. Ahora mismo se carga toda la pelicula cuando la barra anda por el fotograma 30 como mucho (casi vacia).

no he probado lo que has posteado, sirve para eso que digo?¿


Muchas gracias a todos

G:
ah, entonces pon:

Código:
this.onEnterFrame = function() {
	porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
	barra_mc.gotoAndStop(porcentaje);
	porcentaje_txt.text = porcentaje+"% Cargado";
	if(porcentaje == 100){
		play();
	}
}
stop();
eso en el primer frame de tu pelicula
__________________
if(user=="female" && user>="hot"){
user.gotoAndStop("sapinto's bed");
}
mi portafolio

Última edición por SAPINTO; 28/02/2006 a las 11:28
  #22 (permalink)  
Antiguo 28/02/2006, 11:13
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 19 años, 1 mes
Puntos: 1
Cita:
Iniciado por luzin
... es una barra de 100 fotogramas se llene a la vez que llega al 100% de la carga
Ah, vale, entonces solo cambia esto:

Código:
this.onEnterFrame = function() {
	porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
	barra_mc.gotoAndStop(porcentaje);
	porcentaje_txt.text = porcentaje+"% Cargado";
	if(porcentaje == 100){
		play();
	}
}
stop();
Donde barra_mc es un MC con una barra o una animacion de progreso con 100 frames.

ArgoN
  #23 (permalink)  
Antiguo 28/02/2006, 12:06
 
Fecha de Ingreso: abril-2005
Mensajes: 169
Antigüedad: 19 años, 7 meses
Puntos: 0
Hola Argon, gracias por sendas respuestas:

tras poner en el primer fotograma de la linea de tiempo principal, en una capa llamada acciones, esto:

this.onEnterFrame = function() {
porcentaje = Math.round((getBytesLoaded()/getBytesTotal())*100);
barra_mc.gotoAndPlay(porcentaje);
porcentaje_txt.text = porcentaje+"% Cargado";
if(porcentaje == 100){
play();
}
}
stop();


no funciona, ademas se vuelve loco y no respeta los stop y me mete en un bucle....¿alguna idea?¿ de pq¿

muchas Gracias

G.
__________________
http://www.gnarvaez.com
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 22:42.