Comunidad de diseño web y desarrollo en internet online

Como acceder a un loader des de otro loader?

Citar            
MensajeEscrito el 09 Dic 2009 12:40 pm
Buenasss, como puedo hacer un addChild a un Loader desde lo que hay cargado dentro de este mismo??

Es decir, cargo "menu.swf" en un loader llamado "contenedor1". Cuando clico en una opción de este menú quiero que se cargue otro swf en el "contenedor1".

Gracias de antemano,

Un saludo.

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Dic 2009 01:36 pm
Usa parent, o parent.parent, o root.contenedor1, etc, es decir especifica la ruta al contenedor desde donde estés, ya que una vez que has cargado contenido en un Loader que se encuentra en el DisplayList, el contenido cargado forma parte de la jerarquía

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:07 pm
Buenas! Grácias por tu respuesta pero no me funciona.

Desde menu.swf cargo en dos loaders (animation y cruz) distintos animacion.swf y cruz.swf respectivamente.

En cruz.swf pongo un boton a lo que le indico lo siguiente:

Código ActionScript :

boton.addEventListener(MouseEvent.CLICK, tancador);

function tancador() {
   MovieClip(parent).animation.load(new URLRequest("models/default.swf"));
   addChild(MovieClip(parent).animation);

}


Con esto pretendo cargar default.swf en el contenedor animation, des del "boton" del contenedor cruz.

un saludo.

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:12 pm
Nop, animation es una variable que apunta a un loader, pero la referencia la obtienes con getChildAt ... puedes usar addChildAt cuando agregas el Loader así estás seguro de que nivel lo tienes, entonces si algo como

Loader(parent.getChildAt(XX)).load(....)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:30 pm
Es decir.... en el menu.swf que ahora tengo asi:

Código ActionScript :

var cab = new Loader();
var creu = new Loader();



function abuela (e:Event): void   {
      trace ("abuela");
      MovieClip(root).cab.load(new URLRequest("models/abuela.swf"));
      MovieClip(root).creu.load(new URLRequest("creu.swf"));
      addChild(MovieClip(root).cab);
      addChild(MovieClip(root).creu);

      MovieClip(root).cab.x = 460;
      MovieClip(root).cab.y=65;
      MovieClip(root).creu.x = 460;
      MovieClip(root).creu.y=65;
      
}


Debería cambiar el loader declarado arriba de todo por esta expresion? Pero luego como accedo al loader? No lo entiendo.

Gracias. Un saludo

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:33 pm
Si el code está todo en la misma línea de tiempo, dentro de la función no hace falta nada más que

cab.load(new URLRequest("models/abuela.swf"));

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:37 pm
Pero yo quiero modificar el swd del "cab" desde la película creu.swf.

Saludos

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:37 pm
Pero yo quiero modificar el swf del "cab" desde la película creu.swf.

Saludos

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:44 pm
Agrega esta función

Código ActionScript :

function cargaEnCab(quien:String){
   cab.load(new URLRequest(quien)); 
}

//desde creu.swf
parent.cargaEnCab("algun.swf")


¿No puedes usar AS2 en vez de AS3? ... porque trabajando de esta forma tus problemas recien empiezan.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 03:55 pm
Hola otra vez, gracias por tus rapidas respuestas.

No puedo usar as2 porque ya hay varios swf en as3 y tengo que utilizarlo pq todas las funciones que tengo ya estan implementadas. Además tendré que acostumbrarme a as3.

No me permite

Código ActionScript :

//desde creu.swf 
parent.cargaEnCab("algun.swf") 


si no

Código ActionScript :

MovieClip(parent).cargaEnCab("algun.swf")


de todas formas, haciendo lo que me comentas en la salida de errores me dice:

ArgumentError: Error #1063: Discordancia del recuento de argumentos en creu_fla::MainTimeline/tancador(). Se esperaba 0 y se obtuvo 1.


Un saludo

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 04:18 pm
Mira que es tancador

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 04:23 pm
Es la funcion que intenta modificar el swf del otro contenedor, lo he modificado con algo sencillo como un trace parent name, i me dá el mismo error.



Código ActionScript :

boton.addEventListener(MouseEvent.CLICK, tancador);
function tancador() {
   trace(parent.name);
}

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 04:26 pm
Cambia esta línea:

function tancador(evt:MouseEvent)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 04:40 pm
Perfecto ya me funciona el trace, pero tu funcion:

Código ActionScript :

creu.addEventListener(MouseEvent.CLICK, tancador);


function tancador(evt:MouseEvent) {
   MovieClip(parent).cargaEnCab("default.swf");


}

me da este error:

TypeError: Error #1034: Error de conversión forzada: no se puede convertir flash.display::Loader@1612d1c1 en flash.display.MovieClip.
at creu_fla::MainTimeline/tancador()

Por titoworld

26 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Dic 2009 04:45 pm
Sube mas

MovieClip(parent.parent)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Dic 2009 04:47 pm
Perfectooo!!! muchisimas gracias por tu paciencia y dedicación.

Un saludo!

Por titoworld

26 de clabLevel



 

firefox

 

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