Comunidad de diseño web y desarrollo en internet online

convertir imagenes cargadas en un movieclip en botones

Citar            
MensajeEscrito el 02 May 2009 10:54 am
Hola, estoy haciendo una web. Tengo unas imágenes en una carpeta y las he cargado de forma dinámica del siguiente modo:
var cont_Imagen:MovieClip=this.createEmptyMovieClip("cont_Imagen", this.getNextHighestDepth());

cont_Imagen._xscale=40;
cont_Imagen._yscale=40;

for (var i:Number=1;i<=5;i++){
cont_Imagen.duplicateMovieClip("cont_Imagen"+i, this.getNextHighestDepth());
this["cont_Imagen"+i]._y=498;
this["cont_Imagen"+i]._x=10+(160*(i-1));
this["cont_Imagen"+i].loadMovie("productos/prod"+i+".jpg");
}

Hasta ahí, todo correcto: se cargan, se posicionan... Pero mi problema es que quiero que cada una de las imágenes que he cargado, se comporte como un botón, es decir, que cuando pulse sobre una imagen, vaya a un fotograma determinado. He leido otros tutoriales pero todos indican como hacerlo si el movieclip está en la biblioteca o en el escenario, pero en mi caso, el movieclip está cargado dinamicamente y no puedo hacer botones transparentes en una capa superior.
Si alguien me puede ayudar...

Por davidnou

3 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 May 2009 11:47 am
Puedes cargar las imágenes dentro de un movieClip contenido en otro movieClip que es al que le asignas la acción o puedes utilizar movieClipLoader y en el evento onLoadInit asignas la acción a tus movieClips. Aunque te recomiendo el segundo camino, el primer caso sería algo como esto:

Código ActionScript :

var cont_Imagen:MovieClip = this.createEmptyMovieClip("cont_Imagen", this.getNextHighestDepth());
cont_Imagen.createEmptyMovieClip("foto", 1); 

cont_Imagen._xscale=40;
cont_Imagen._yscale=40;

var dup_image:MovieClip;

for (var i:Number = 1; i<= 5; i++){
   
   dup_image = cont_Imagen.duplicateMovieClip("cont_Imagen" + i, this.getNextHighestDepth());
   dup_image.numero = i;
   dup_image._y = 498;
   dup_image._x = 10+(160 * (i-1));
   dup_image.foto.loadMovie("productos/prod" + i + ".jpg");
   
   dup_image.onRelease = function():Void{
      
      trace("Ha presionado la imagen " + this.numero);      
      
   }
   
}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 02 May 2009 12:26 pm
Con el código que me has puesto, carga las imagenes, pero no las muestra :crap:

Por davidnou

3 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 May 2009 01:27 pm
No me refería a que copiaras el código y lo pegaras y probaras, sino que analizaras el planteamiento, un movieClip al cargar contenido pierde sus eventos por lo que una opción es cargar el contenido en otro movieClip dentro del mismo, intenta con el anterior código crear el movieClip foto en cada movieClip que duplicas dentro del ciclo, debe funcionar de esta manera. El problema es que los movieClip creados por AS3 dentro del otro movie no son duplicados con duplicateMovieClip.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 02 May 2009 02:29 pm
ah!! ok! De todas formas utilizo AS2
Muchas Gracias!!!!

Por davidnou

3 de clabLevel



 

msie7
Citar            
MensajeEscrito el 08 May 2009 10:08 pm
Me equivoqué al poner AS3 (en AS3 no existe duplicateMovieClip), me refería a AS solamente.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox

 

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