Comunidad de diseño web y desarrollo en internet online

attachMovie dinamico

Citar            
MensajeEscrito el 16 Jun 2005 02:13 am
Buenas

Hay alguna forma de generar clips dinámicos y luego usar la funcion attachMovie para ponerlos donde quieras???
Es decir alguna forma de vincular el mc que se crea dinámicamente para luego usar esa vinculación en el primer parámetro de attachMovie

Se entiende??

Personalmente creo que no se puede… pero quien sabe :roll:

Saludos!

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie
Citar            
MensajeEscrito el 16 Jun 2005 02:39 am
si, si se puede ;)

Código :

this.createEmptyMovieClip ("contenedor", 10);
contenedor.attachMovie("movie", 0);


ya si de plano quieres impresionar puedes hacer esto (me parece que si se puede) :

Código :

this.createEmptyMovieClip("contenedor", 10).attachMovie("movie", 0, {_x:40, _y:150})


En ambos casos utilizo el attachMovie como metodo, no como funcion (igual se puede hacer como funcion, pero no es tan elegante)

saludos!

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 16 Jun 2005 02:55 am
jerejeje !! no tan rápido mi amigo!!!

seguro que no me exprese bien...

esto es lo que yo digo:

Código :

this.createEmptyMovieClip ("contenedor", 10); 
otroMovie.attachMovie("contenedor", 0); 


porque cuando vos decís:

Código :

contenedor.attachMovie("movie", 0);


supuestamente "movie" es el identificador que le pusiste al mc de la biblioteca al vincularlo (la opcion exporar para actionScript),
lo que yo necesito hacer es crear los mc dinámicamente y vincularlos también dinámicamente para poder usar el attachMovie

la cosa es que necesito crear primero las paginas de un libro que son dinámicas y luego poder usar el attachMovie para no tener que crearlas cada vez que necesito hacer el efecto de pasado de hoja, porque ahora (como podes ver en este link que te pongo) las imágenes parpadean cuando queres pasar la hoja.... ya probé de todo pero no logro evitar eso

http://www.themagicexperience.com/link.htm
(Esta en producción esto... no me lo critiquen por favor jejeje)

saluuudos!

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie
Citar            
MensajeEscrito el 16 Jun 2005 03:05 am
em...es la misma historia :P
no es exactamente el mismo ejemplo que quiers, pero si sirve para demostrar que se puede

Código :

var i:Number;
var aMc:Array = ["verde_mc", "rojo_mc", "azul_mc"];

for (i=0; i<aMc.lenght; i++) {
var mc:MovieClip = this.createEmptyMovieClip("m"+i, i);
mc.attachMovie(aMc[i], "m"+i, i);
}



Solo hay que pasar el nombre del identificador por referencia (o sea, con una variable), no por valor.

Saludos!

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 16 Jun 2005 03:18 am
nonoono :(

tu supones que "verde_mc", "rojo_mc", "azul_mc" son clips que ya estan creados en la biblioteca y vinculados

yo lo que hago es crear en tiempo de ejecucion los clips "verde_mc", "rojo_mc", "azul_mc" y despues necesito de alguna forma duplicarlos en otro lado

es decir que cuando mi pelicula comienza no existe ni el clip "verde_mc" ni el "rojo_mc" ni el "azul_mc"

las paginas del libro se cargan de un xml, pueden ser 4,8 o 30 y el contenido cambia tambien... por eso es que las paginas se generan dinamicamente... es decir que no tengo paginas en mi biblioteca

(no funciona en este caso el duplicateMovieClip porque los clips se tienen que duplicar en otros niveles)

no soy el unico loco que pregunta esto porque en la web de macromedia hay otros que preguntan lo mismo.. pero nadie le responde :cry:

Link a livedocs

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie
Citar            
MensajeEscrito el 16 Jun 2005 05:23 am
em....a ver

comienza la pelicula...y no existe nada en la libreria?

Si cargas los mc de la libreria mediante un swf externo, no podras llamarlos desde la pelicula madre (el cual es uno de los principales problemas que tienen los componentes V2 de Macromedia). Unicamente podras llamarlos desde la pelicula hija....esto es dado que Flash no permite compartir librerias en ese sentido entre diferentes peliculas...

es eso?

es que no me explicas de donde vienen esos mc en tiempo de ejecucion :P

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 16 Jun 2005 12:41 pm
casi casi!

es parecido a lo que dices

comienza la pelicula...y no existe nada en la libreria?
SI! no hay nada, ni cargo ninguna libreria externa ni nada

es que no me explicas de donde vienen esos mc en tiempo de ejecucion
yo los creo con createEmptyMovieClip como puse antes

lo que hago es crear un movie en el _root por ejemplo mediante createEmptyMovieClip, le meto una imagen adentro y despues necesito copiar ese movie y meterlo en otro lado
como puede ser que en flash no se pueda hacer eso!!!!
con duplicateMovieClip no funciona porque el duplicateMovieClip te duplica el movie dentro del movie padre en donde estaba... y yo necesito duplicarlo dentro de otro movie

estube buscando en internet, no encontre mucho pero lo poco que encontre aparentemente indica que esto no se puede hacer

http://flashmove.com/forum/archive/index.php/t-18302

saludos y muchas gracias por tu interes!

(vamos del Rancho tu puedes!!!! si hacemos andar esto revolucionamos el flash :lol: :lol: )

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie
Citar            
MensajeEscrito el 16 Jun 2005 02:16 pm

ultralogico escribió:

lo que hago es crear un movie en el _root por ejemplo mediante createEmptyMovieClip, le meto una imagen adentro y despues necesito copiar ese movie y meterlo en otro lado
como puede ser que en flash no se pueda hacer eso!!!!


No puedes hacer eso.

Y tú dirás, pues es logico que se pueda hacer, ¿no? Pues no. La cuestión es que tu una vez cargas una imagen, puedes volver a cargarla tantas veces como te de la gana porque está en caché.

Por lo tanto al estar en caché, no hace falta duplicar los clips, lo que nos lleva a porque los programadores no incluyeron eso.

Si quieres hacer eso que tu dices simplemente haz un for con muchos createEmptyMovieClip y un loadMovie de la imagen para cada uno y ya esta.

Por ejemplo:

Código :

for (i=0; i<10; i++){
   createEmptyMovieClip("contenedor"+i,i);
   loadMovie("pr0n.jpg", this["contenedor"+i]);
}


Deu!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

clabbrowser
Citar            
MensajeEscrito el 16 Jun 2005 02:31 pm
jeje un link :cry:

Saludos :D

Por flasher

Invitado



 

firefox
Citar            
MensajeEscrito el 16 Jun 2005 03:16 pm

elecash escribió:


Y tú dirás, pues es logico que se pueda hacer, ¿no? Pues no. La cuestión es que tu una vez cargas una imagen, puedes volver a cargarla tantas veces como te de la gana porque está en caché.


en este caso si me serviria poder hacerlo, porque aunque la imagen esta en chache, no se logra cargar lo suficientemente rapido como para que el usuario no se de cuenta y se ve ese parpadeo feo que es el que intento eliminar
puedes ver de lo que hablo en este link http://www.themagicexperience.com/link.htm
cuando pasas la pagina del libro

elecash escribió:


Si quieres hacer eso que tu dices simplemente haz un for con muchos createEmptyMovieClip y un loadMovie de la imagen para cada uno y ya esta.

Por ejemplo:

Código :

for (i=0; i<10; i++){
   createEmptyMovieClip("contenedor"+i,i);
   loadMovie("pr0n.jpg", this["contenedor"+i]);
}



esto es otra cosa... creo que no logro hacerme entender, porque puntualmente lo que deseo es tener que cargar la imagen con loadMovie o con un MovieClipLoader solo una vez, porque cuando llamo a loadMovie por ejemplo hasta que se carga la foto se ve ese parpadeo

pero aca encontre unos links que les pueden servir tambien a ustedes porque son muy interesantes,,,
y es lo que yo preguntaba!!!! jejeje :lol:

primer link
un articulo de Carlos Rovira, la parte que aplica es la que esta bajo el subtitulo Dynamic MovieClip linkage
http://www.actionscript.com/index.php/fw/1/towards-open-source-flash-development/

segundo link
del cual Carlos Rovira se baso y en donde tambien se explica muy bien como hacer la vinculacion dinamica que yo queria hacer
http://www.peterjoel.com/blog/?archive=2004_01_01_archive.xml

de todas formas aunque pude realizar la vinculacion dinamica, no me soluciono el tema de la imagen (porque en la clase al final de cuentas se usa de nuevo el loadMovie cada vez que hago el attachMovie)... y ya me di por vencido :cry: :twisted: ... quedara asi jeje

saludos y gracias por su interes!

pd: amigo flasher soy novato pero no tanto!!! ejejejejej :lol:

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie
Citar            
MensajeEscrito el 16 Jun 2005 04:28 pm
emmm...wei.....ahora lo que comprendo es que tiene que ver el attachMovie con loadMovie (es que tu esplicacion estaba un poco liada XD). Lo que te explique con Arrays es lo mismo que explica Carlos Rovira...solo que el usa Clases. Tal como dice elecash...no se puede duplicar un movieclip con una imagen cargada con loadMovie...hay que hacer el ciclo. Lo que puedes hacer para evitar ese parpadeo es usar el MovieClipLoader y hacer un preloader para todos......en la siguiente estructura

creas un movieclip principal vacio
dentro de ese creas un contenedor para cada imagen con un ciclo for y a la vez cargas las imagenes
al movieclip principal le pones _visible = false
en el momento que cargues todas las imagenes, cambias la propiedad a true

es lo unico que puedes hacer....

saludos wei ^^

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 16 Jun 2005 05:13 pm

tangamampilia escribió:

Lo que te explique con Arrays es lo mismo que explica Carlos Rovira...solo que el usa Clases.


pero la diferencia es que Carlos Rovira no necesita tener elementos vinculados en la biblioteca... cosa muuuuy distinta :D

y para que veas que no es lo mismo el attachMovie de clips en la biblioteca que con clips dinámicos hice esto :P :

http://www.logindesarrollos.com.ar/linkage/pruebaLinkage.swf

se ve claramente que aunque la imagen esta en chache tarda en mostrarse... sea que uses loadMovie o MovieClipLoader.. es lo mismo…. Pero cuando el clip esta en la biblioteca se reemplaza tan rápido que ni te das cuenta!!!!

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie
Citar            
MensajeEscrito el 16 Jun 2005 07:36 pm
wow....tienes razón en parte....realmente no es que se generen los linkages dinamicamente, sino al parecer es un cosa que hicieron los de Macromedia y lo descubrio una persona al descompilar un archivo. Es sabido que en realidad cuando compilas un archivo en AS 2.0 a swf, este se reconvierte en codigo de AS 1.0 (y esto es lo que hace que un swf de flash mx 2004 se pueda ver en el player 6). Al parecer cada vez que generas una clase, esta se vincula mediante el tipico #include pero dentro de un movieclip en la libreria con linkage automatico....utilizando el prefijo __Packages segudo de la ruta completa y el nombre de la clase.

es lo que explican en el link que da Carlos Rovira y que tu tambien pones...impresionante...cada dia se aprende algo nuevo ;)

gracias por el dato UltraLogico ^^

Por tangamampilia

.GAIA Developer

961 de clabLevel


6 articulos

Genero:Masculino   Anime Bloggers

México, D.F.

safari
Citar            
MensajeEscrito el 17 Jun 2005 12:35 pm
por nada amigo del rancho :D

alguna vez te tenia que tocar apreder avos jejeje :lol: :lol:

pero hablando en serio, aunque hace poco que estoy con flash, tengo cierta idea de lo que dices y verdaderamente es algo muy bueno lo que descubrio ese tipo con el tema de donde se registran las vinculaciones

ahora con ese truco vamos a poder hacer varias cositas interesates jeje ^^

saludos!!!

Por UltraLogico

45 de clabLevel



 

Córdoba Argentina

msie

 

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