Comunidad de diseño web y desarrollo en internet online

MovieClipLoader con fotos

Citar            
MensajeEscrito el 01 Ene 2009 11:49 pm
Hola de nuevo, este post va relacionado con mi duda del post de abajo, pero más general....

Es que leyendo el tutorial de la web: Precargas de swf con moviecliploader Dice que este tutorial, funciona perfectamente si se usa para swf, y no para jpgs, yo he estado siguiendo otro tutorial q carga jpg con moviecliploader.. y toda va de maravilla, hasta que intento meter una precarga....

Es por eso, quizás que me da problemas,? ¿ Porqué moviecliploader no funciona bien con jpgs? ¿Cuál sería su "equivalente" para imagenes?

Gracias por la info y ayuda.

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Ene 2009 12:12 am
No deberias postear 2 veces para el mismo tema. MovieClipLoader funciona para archivos de tipo imagenes y swf, a la perfeccion, si te das cuenta, ese post es del 2004, osea esta viejito, :P para que funcione con imagenes comenta estas lineas:

//Ahora escondemos el objeto de la precarga y lo frenamos
target_mc._visible = false;
//target_mc.stop();

//Y mostramos el objeto
target_mc._visible = true;
//target_mc.play();

No es necesario que esten ahi, ya que si fuera un swf, no incia sino hasta el evento onLoadInit.

Si tienes dudas con ese tutorial(el cual funciona de maravilla), publicalas en este hilo y con gusto intentare resolverlas.

Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 02 Ene 2009 09:24 pm
Ok gracias... quitando eso, ya me funciona.....

Por cierto, cuándo dije/preguntaba sobre pq el tuto no funcionaba con jpgs, era pq en el mismo tutorial, abajo pone una anotación, diciéndo esto, no era que yo lo decía, es q era lo que había leido, y por eso preguntaba el porque de esa anotación.

Pero ya veo que si funciona.

Mil gracias!

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Ene 2009 10:07 pm
Claro que si, ahi lo dice, pero, escribi eso para que nadie pensara que me ando quejando de inactualizados ciertos tutos, y no me golpearan despues por decir, "actualicen los tutos", jijiji :P

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 02 Ene 2009 10:11 pm
Una cosita más... sobre la precarga....

Resulta que al cargar la imagen, hay veces q la precarga cuando está a mitad, ya sale la imagen y otras veces se reproduce dos veces, si tarda más la imagen? porque??

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Ene 2009 09:18 am
mmm, podrias poner como queda tu codigo final?

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 03 Ene 2009 01:25 pm
Claro... no lo he puesto antes, pq cómo es algo largo... pero aqui va la función donde está la precarga:

Código :

function verFotoGrande(ruta:String) {

   clearInterval(intervaloColor);
   // creo el clip donde irá la foto grande en una profundidad fija
   // para que se reemplace cada vez que pincho en una miniatura
   var grande:MovieClip = createEmptyMovieClip("grande_mc", 2*IMG_array.length+11);
   // igual con el clip que contendrá el marco
   var bajo_grande:MovieClip = createEmptyMovieClip("bajo_grande_mc", 2*IMG_array.length+10);
   // posición vertical fija
   grande._y = 180;
   grande._x = 380;
   // para cargar la foto grnade definimos otro objeto MovieClipLoader
   // y otro objeto detector de eventos
   var grande_mcl:MovieClipLoader = new MovieClipLoader();
   var grandeListener:Object = new Object();
   grande_mcl.addListener(grandeListener);
   // cargo la foto grande
   grande_mcl.loadClip("galeria/bodegones/bigs/"+ruta,grande);
   
   
   grandeListener.onLoadStart = function(target_mc:MovieClip) {
      
trace("Iniciando");
   //Colocamos la barra de precarga en el escenario con el nombre "barra_mc"
   contenedor_mc.attachMovie("barra", "barra_mc", 1);
   //Ubicamos la barra en la mitad del escenario
   barra_mc._y = Stage.height/2;
   barra_mc._x = Stage.width/2;
   //Y nuestra barra esta lista para moverse en el evento onLoadProgress      

   };
   grandeListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
      trace("En progreso");
   //Declaramos la variable de calculo de porcentaje
   var porcentaje:Number;
   //Calculamos el porcentaje con las variables que le llegan por parametro a la función
   porcentaje = Math.round((loadedBytes*100)/totalBytes);
   //Vamos al frame del porcentaje en nuestra barra de carga
   barra_mc.gotoAndStop(porcentaje);
   //Ahora escondemos el objeto de la precarga y lo frenamos

   };
   
   grandeListener.onLoadInit = function(target_mc:MovieClip) {
      
      trace("ya");
   //Como ya cargo completo, entonces quitamos la barra
   contenedor_mc.barra_mc.removeMovieClip();
   //Y mostramos el objeto



//ASIGNACIÓN DEL LISTENER AL MOVIECLIPLOADER
//Ahora, todas las funciones que declaramos seran asignadas a
//nuestro MovieClipLoader "precargador_mcl"

      // con el code siguiente hago que las fotos grandes se carguen tomando como referencia su centro, y no su esquina superior izqda
      target_mc._x = 580-target_mc._width/2; 
      target_mc._y = 430-target_mc._height/2;
      //Sonido para la foto en grande
      var sonidoFoto=new Sound();
      sonidoFoto.attachSound("foto1");
      sonidoFoto.start();
      
      // recolocamos el marco que rodea a la foto grande
      bajo_grande._x = target_mc._x-5;
      bajo_grande._y = target_mc._y-5;
      // dibujamos el marco
      with (bajo_grande) {
         beginFill(0x000000);
         lineStyle(1,0x000000,100);
         lineTo(target_mc._width+10,0);
         lineTo(target_mc._width+10,target_mc._height+10);
         lineTo(0,target_mc._height+10);
         lineTo(0,0);
         endFill();
      }
      
   };
}


En el escenario sólo tengo una instancia del mc contenedor (con nombre de instancia: contenedor_mc) y dentro de la biblioteca la barra de precarga (con el dibujo de 100 frames y su animacion) y nombre de vinculacion "barra" .

Gracias por toda la ayuda, eres muy amable.

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Ene 2009 09:41 pm
Bueno, ya vi el codigo(la funcion) que colocaste y tiene errores tales que sinceramente no creo que ese codigo te funcione, como el de la funcion onLoadProgress en donde recibes los parametros bytesLoaded y bytesTotal usas otros llamdos loadedBytes y totalBytes, por tanto no creo que eso funcione, segundo, usas barra_mc sin el operador de acceso, osea sin llamarla de este modo: "contenedor_mc.barra_mc", eso en las funciones onLoadStart, onLoadProgress y onLoadInit y bueno, fuera de eso creo que lo demas esta bien aunque pusiste un script que no funciona en primera instancia, los errores que mencionaste antes de "hay veces q la precarga cuando está a mitad, ya sale la imagen y otras veces se reproduce dos veces, si tarda más la imagen" no podrian ser porque en primera no funciona, asi que "imaginando", lo de cuando la precarga esta a la mitad puede ser porque la imagen se guarda en cache y cuando la abres por segunda vez, se carga mucho mas rapido, osea, en un salto de 0 a 50 y luego de 50 a 100, Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 04 Ene 2009 09:56 am
Gracias!!! :D

He corregido lo que me dices y ya funciona perfecta.... lo de bytesLoaded por loadedBytes, lo que me pasó es que mezclé dos tutoriales, y no me di cuenta de este error.... :S ... y lo del contenedor, se me escapó en una barra, las demás lo tenían pero se me pasó esa... juas... q fallo....

Pero una vez corregido ésto.... ya funciona todo perfecto!! :D

Mil gracias!!!

Por Hapki

Claber

268 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.