| Mensaje |
Autor |
Publicado: Jue Mar 27, 2008 2:30 am |
Citar |
Agradezco cualquier sugerencia acerca de como realizar esto:
Tengo una swf principal "A" y alli cargo -en un contenedor del tipo MovieClip- un swf externo "B". Lo que necesito es que cuando la animación del swf "B" alcance cierto fotograma "A" me descargue "B".
Una pregunta similar pero mas general sería: Como puedo, desde un swf cargado externamente ("B"), llamar una función escrita en el swf principal ("A").
Gracias de nuevo por su ayuda. |
|
|
leonfcs
clabLevel: 8 
|
|
Volver arriba |
 |
Publicado: Jue Mar 27, 2008 4:38 am |
Citar |
ok, ya se como descargar el swf ¨B¨.
Pero sigo sin saber si puedo llamar desde "B" una función escrita en la linea de tiempo de ''A''. |
|
|
leonfcs
clabLevel: 8 
|
|
Volver arriba |
 |
Publicado: Jue Mar 27, 2008 9:23 am |
Citar |
Igual que en AS2, para subir un nivel usas parent, dos niveles, parent.parent , etc Para ir a la raiz, usas root. Lo que cambia es que ya no usas guión bajo al principio (_parent, _root)
Jorge |
_________________ http://www.flash-db.com |
|
solisarg

clabLevel: 567 
Argentina
|
|
Volver arriba |
 |
Publicado: Jue Mar 27, 2008 3:01 pm |
Citar |
pues no he dado con esto. Por ejemplo si tengo en el primer frame del swf principal "A" una funcion llamada:
funcionX():void { trace( "funcionX activada") }
podría llamar esta función desde un frame del swf "B" cargado externamente? algo así como: en el frame 10: funcionX(); |
|
|
leonfcs
clabLevel: 8 
|
|
Volver arriba |
 |
Publicado: Jue Mar 27, 2008 3:07 pm |
Citar |
|
solisarg

clabLevel: 567 
Argentina
|
|
Volver arriba |
 |
Publicado: Vie Mar 28, 2008 5:04 pm |
Citar |
listo, ya la tengo. Puse la función en la linea principal de "A". "A" carga a a "B" con un Loader y en "B" llamé a la funcion con:
with (parent.parent) { this.parent.parent.funcionX() }
En realidad muy sencillo. |
|
|
leonfcs
clabLevel: 8 
|
|
Volver arriba |
 |
Publicado: Vie Mar 28, 2008 7:48 pm |
Citar |
Yo te recomiendo que en lugar de hacer eso con los parents, mejor despaches un evento burbuja en el clip hijo, (que como sabemos los eventos burbuja se propagan hacia el root por la jerarquía), y pues solo has de colocar un listener a ese evento tuyo en el padre y listo, es más elegante y desacoplado.  |
_________________ La información es el poder y el arma definitiva. |
|
MorphX
SWAT Team

clabLevel: 974 
La Telaraña Digital
2 Tutoriales
1 Tips
|
|
Volver arriba |
 |
Publicado: Vie Mar 28, 2008 7:58 pm |
Citar |
Suena bien. Pero como es eso de despachar eventos burbuja? En donde puedo encontrar información, tutorial o cualquier guía para aprender eso? Soy novato en esto del actionscript 3.
Saludos |
|
|
leonfcs
clabLevel: 8 
|
|
Volver arriba |
 |
Publicado: Vie Mar 28, 2008 8:04 pm |
Citar |
ClipA padre de ClipB
Código :
ClipB.dispatchEvent(new Event("eventodeB",true)); //el true activa el modo de propagacion burbuja :)
///Padre ClipA.addEventListener("eventodeB",funciondetratamiento);
private function funciondetratamiento(evt:Event){ //tratamiento en el padre }
Busca en la ayuda sobre la clase Event  |
_________________ La información es el poder y el arma definitiva. |
|
MorphX
SWAT Team

clabLevel: 974 
La Telaraña Digital
2 Tutoriales
1 Tips
|
|
Volver arriba |
 |
 |