Foros del Web » Creando para Internet » Flash y Actionscript »

problema con "object" al leer xml

Estas en el tema de problema con "object" al leer xml en el foro de Flash y Actionscript en Foros del Web. Hola tengo este pequeño código, el cual lee un archivo xml, donde están las rutas a unas fotos y algún dato mas. La pega, solo ...
  #1 (permalink)  
Antiguo 11/03/2009, 15:12
overon37
Invitado
 
Mensajes: n/a
Puntos:
problema con "object" al leer xml

Hola tengo este pequeño código, el cual lee un archivo xml, donde están las rutas a unas fotos y algún dato mas.

La pega, solo aplica la redimensión a la última foto, debe ser porque al crear una variable:Object, por cada registro, pero con el mismo nombre, solo lo aplica a la última..... que solución puede tener esto, array? un nombre distinto a cada Object.... y este último supuesto como sería en este código

muchas gracias

Código:
import flash.display.Loader;
// variable para xml
var archivo_xml:XML;
// cargamos el archivo xml
var cargador= new URLLoader(new URLRequest("datos.xml"));
// cuando ha terminado de cargar el xml
cargador.addEventListener(Event.COMPLETE, finCarga);
var pos_x:int=10;
var pos_y:int=10;
function finCarga (event:Event){
	// cuando se ha terminado de cargar el archivo
	// XML leemos cada uno de sus nodos y obtenemos 
	// sus valores.
	archivo_xml= XML(event.target.data);
	for each (var nodo_xml:XML in archivo_xml.pic) {
		var foto:Loader=new Loader();
		foto.contentLoaderInfo.addEventListener(Event.COMPLETE, cargado);
		foto.load(new URLRequest(nodo_xml.imagen));
		addChild(foto);
		foto.x=pos_x;
		foto.y=pos_y;
                pos_x=pos_x+120;
	}
	function cargado (event:Event){
		foto.width=100;
		foto.height=100;
	}
}
  #2 (permalink)  
Antiguo 11/03/2009, 16:02
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 11 meses
Puntos: 43
Respuesta: problema con "object" al leer xml

Hola Overon37 !

Veo algunas cosas, la función cargado sácala de la función y en lugar de redimensionar haciendo referencia a foto, utiliza la referencia que da el objeto event del elemento que fue cargado:

Código actionscript:
Ver original
  1. import flash.display.Loader;
  2. // variable para xml
  3. var archivo_xml:XML;
  4. // cargamos el archivo xml
  5. var cargador= new URLLoader(new URLRequest("datos.xml"));
  6. // cuando ha terminado de cargar el xml
  7. cargador.addEventListener(Event.COMPLETE, finCarga);
  8. var pos_x:int=10;
  9. var pos_y:int=10;
  10. function finCarga (event:Event){
  11.     // cuando se ha terminado de cargar el archivo
  12.     // XML leemos cada uno de sus nodos y obtenemos
  13.     // sus valores.
  14.     archivo_xml= XML(event.target.data);
  15.     for each (var nodo_xml:XML in archivo_xml.pic) {
  16.         var foto:Loader=new Loader();
  17.         foto.contentLoaderInfo.addEventListener(Event.COMPLETE, cargado);
  18.         foto.load(new URLRequest(nodo_xml.imagen));
  19.         addChild(foto);
  20.         foto.x=pos_x;
  21.         foto.y=pos_y;
  22.                 pos_x=pos_x+120;
  23.     }
  24. }
  25.  
  26. function cargado(event:Event):void {
  27.     event.target.width=100;
  28.     event.target.height=100;
  29. }

Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:53.