Comunidad de diseño web y desarrollo en internet online

cargar fotos externas (condicional if)

Citar            
MensajeEscrito el 15 Abr 2009 08:48 pm
Hola, estoy con una galeria q carga externamente unas fotos, lo estoy haciendo con moviecliploader, y quiero que en la acción del boton "adelante", pues que se compruebe qué foto está cargada, y si por ejemplo está cargada la foto llamada 1.jpg, pues q al pulsar nuevamente se cargue la foto 2.jpg.

Yo lo estoy intentado de esta forma:

Código ActionScript :

var ruta = "ampliaciones/1.jpg"; 
btn_sig.onPress=function(){
   if (ruta == 1){ 
      var ruta = "ampliaciones/2.jpg";
   }
   //carga la imagen
   mi_mcl.loadClip(ruta, contenedor_mc);
}


Pero no me funciona, no me carga la siguiente, ¿cómo se puede hacer?

Gracias.

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Abr 2009 09:07 pm
tienes que crear una variable que guarde pior ejemplo un index, el cual es un numero, mira algo asi:
[/as]
var index:Number = 0;
btn_sig.onPress=function(){
if ( index < 10 )//Si solo hay 10 fotos
{
mi_mcl.loadClip("ampliaciones/"+index+".jpg", contenedor_mc);
index++;
}
}
[as]

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 15 Abr 2009 09:46 pm
Perfecto!!

Ahora estoy intentando que nada más entrar (sin pulsar ningún botón) ya se vea la primera imagen, he probado a sacar el loadClip del botón, pero no funciona, y tb he probado a meter el code del loadclip dentro del onloadinit pero tampoco va... ¿cómo lo puedo hacer entonces?

Miles de gracias longevie :)

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Abr 2009 09:49 pm
intenta ejecutando la funcion del boton, simulando como si se presionara.

Código ActionScript :

btn_sig.onPress();

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 15 Abr 2009 09:55 pm
Pues no, tampoco :(

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Abr 2009 09:55 pm
bueno, aver como te quedo hasta ahora?

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 15 Abr 2009 10:03 pm
Pues así...

Código ActionScript :

btn_sig.onPress();

var index:Number = 0;
btn_sig.onPress=function(){
if ( index < 10 )//Si solo hay 10 fotos
{
mi_mcl.loadClip("ampliaciones/"+index+".jpg", contenedor_mc);
index++;
}
}

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Abr 2009 10:03 pm
:P estas ejecutando la funcion onPress, antes de que esta sea declarada.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 15 Abr 2009 10:14 pm
Jo... bueno, pero, la he puesto tb al final, y tampoco, pego el code por si acaso...

Código ActionScript :

var index:Number = 0;
btn_sig.onPress=function(){
if ( index < 10 )//Si solo hay 10 fotos
{
mi_mcl.loadClip("ampliaciones/"+index+".jpg", contenedor_mc);
index++;
}
}
btn_sig.onPress();

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Abr 2009 10:15 pm
pero si funciona cuando presionas el boton? esta segura que ya existe el objeto mi_mcl y contenedor_mc ?

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 16 Abr 2009 08:03 am
Si si, estoy segura, pero mira, te pongo todo el code, a ver si tú puedes ver dónde está el fallo.
Por una parte tengo ésto:

Código ActionScript :

var mi_mcl = new MovieClipLoader();
miListener = new Object();

miListener.onLoadStart = function(target_mc) {
   target_mc._visible = false;
   target_mc._xscale = 100;
   target_mc._yscale = 100;

   _root.barra_mc._width = 1;
   _root.barra_mc._visible = true;
};
miListener.onLoadProgress = function(target_mc, loadedBytes, totalBytes) {
   _root.barra_mc._width = 100*(loadedBytes/totalBytes);
};
miListener.onLoadComplete = function(target_mc) {
   _root.barra_mc._visible = false;
};
miListener.onLoadInit = function(target_mc) {
   
   var ancho_maximo = 580;
   var alto_maximo = 580;
   if (target_mc._width>ancho_maximo || target_mc._height>alto_maximo) {
      if (target_mc._width/target_mc._height>1) {
         // disposición horizontal
         var coef = target_mc._width/ancho_maximo;
      } else {
         // disposición vertical
         var coef = target_mc._height/alto_maximo;
      }
      target_mc._width /= coef;
      target_mc._height /= coef;
   }

   target_mc._visible = true;
   
};


mi_mcl.addListener(miListener);

stop();

Y después tengo el code del botón, q lo pongo aqui otra vez por si acaso:

Código ActionScript :


var index:Number = 0;
btn_sig.onPress=function(){
if ( index < 10 )//Si solo hay 10 fotos
{
mi_mcl.loadClip("ampliaciones/"+index+".jpg", contenedor_mc);
index++;
}
}
btn_sig.onPress();

//BOTON PARA ATRAS
var index:Number = 0;
btn_ant.onPress=function(){
if ( index < 10 )//Si solo hay 10 fotos
{
mi_mcl.loadClip("ampliaciones/"+index+".jpg", contenedor_mc);
index--;
}
}

Y luego en el escenario tengo un mc vacio, el "contenedor_mc" y los dos botones, y nada más, eso es todo lo q hay... ¿me falta algo entonces?

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 16 Abr 2009 06:01 pm
U_U declaras dos veces index, solo tienes que declararlo una vez, y en el boton anterior, la evaluacion se hace si index > 0.

¿Si funciona cuando presionas el boton?

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 16 Abr 2009 07:03 pm
Si perdona, es que como en un principio lo hice como me dices, bueno como se debe, sólo declarando una vez el index, y no funcionó pues probé así como te lo he pegado antes por si acaso funcionaba, en fin, que no funciona ... y presionando el botón, si funciona.

Pero el que se vea directamente la primera imagen, eso es lo único q no funciona :(

Gracias de nuevo por todas las molestias...

Por Hapki

Claber

268 de clabLevel



 

firefox
Citar            
MensajeEscrito el 16 Abr 2009 08:09 pm
Vale, a ver, creo q lo he SOLUCIONADO, lo q he hecho es olvidarme del loadclip, y cargar la primera imagen la 0.jpg con loadmovie, y cambiar la inicializacion del index a 1. Y de esta forma ya funciona lo que quiero...
Es decir, he añadido esta linea:

Código ActionScript :

loadMovie("ampliaciones/0.jpg", contenedor_mc);


Y, AHORA lo que no me termina de "cuadrar" es que si yo pongo un límite de 10 fotos (como estamos haciendo ahora), pues si luego en mi carpeta ampliaciones, tengo por ejemplo 6 fotos y no 10. El btn_sig, sigue y sigue hasta el numero 9 y claro está sin mostrar nada, y lo mismo ocurre con el botón atrás, que sigue con el -1,-2 etc... hasta -9. Entonces, como se puede hacer para que si no hay mas fotos a mostrar, pues que se desactive el botón por ejemplo. Sé que para desactivar el boton es con enabled, pero cómo hacer para que "vea" que no hay más fotos, sea el límite que sea el que yo ponga??

Gracias otra vez

Por Hapki

Claber

268 de clabLevel



 

firefox

 

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