El problema q tengo es que cuando creo una instancia de AnularAvisos y quiero detectar el evento anda correcto... pero cuando creo una instancia de LeerDatosAvisos no puedo hacer un Listener por no me aparece en la lista.. no se por que. Todo esto lo ago en la clace Cambiar Avisos.
Codigo de las 3 Claces:
Código ActionScript :
package Avisos { //Importacion de librerias import flash.net.NetConnection; import flash.net.Responder; import flash.events.Event; import flash.events.EventDispatcher; public class LeerDatosAvisos extends EventDispatcher { //Objeto DATOS private var datos:Object; //Variables y Objetos de CONECXION private var gateway:String = "http://127.0.0.1/amfphp/gateway.php"; private var conexion:NetConnection = new NetConnection; private var responder:Responder = new Responder(exitos, error);; //Constructor public function LeerDatosAvisos() { conexion.connect(gateway); conexion.call("miClase.getAvisos", responder); } //Copio datos si conecta. Sino da Error private function exitos(datos:Object):void { this.datos = datos; this.dispatchEvent(new Event(Event.COMPLETE)); } private function error(datos:Object):void { trace("Error: " + datos.description); } //Metodo GET public function get Datos():Object{ return this.datos } } }
Código ActionScript :
package Avisos { //Importacion de librerias import flash.events.Event; import flash.events.EventDispatcher; import flash.net.NetConnection; import flash.net.Responder; public class AnularAviso extends LeerDatosAvisos { //Objeto DATOS private var datos:Object; //Variables y Objetos de CONECXION private var gateway:String = "http://127.0.0.1/amfphp/gateway.php"; private var conexion:NetConnection = new NetConnection; private var ejecutar:Responder = new Responder(exitos, error); //Contructor public function AnularAviso() { super(); super.addEventListener(Event.COMPLETE,pasarObject); } private function pasarObject(e:Event):void { this.datos = e.target.Datos; Verificar(); } private function Verificar():void { var hoy:Date = new Date(); var fecha1:String; var fecha2:String; fecha1 = hoy.getDate() + "/" + (hoy.getMonth()+1) + "/" + hoy.getFullYear(); for (var i:Number = 0; i <= int(datos.length - 1); i++) { trace(i); fecha2 = datos[i].vencimiento; trace(Date.parse(fecha1)); trace(Date.parse(String(fecha2))); if (Date.parse(fecha1)== Date.parse(fecha2)){ conexion.connect(gateway); conexion.call("miClase.setAvisos", ejecutar,datos[i].id); } } } private function exitos(datos:Object):void { this.dispatchEvent(new Event(Event.COMPLETE)); trace("se Ejecuto EXITOS"); } private function error(datos:Object):void { trace("Error: " + datos.description); } } }
Código ActionScript :
package Avisos { import flash.events.Event; import flash.utils.Timer; public class CambiarAvisos { private var State:Boolean; private var Timer:Timer; private var Avisos:LeerDatosAvisos; private var ComprobarAvisos:AnularAviso; public function CambiarAvisos() { ComprobarAvisos = new AnularAviso(); ComprobarAvisos.addEventListener(Event.COMPLETE,RecargarDatos); } public function RecargarDatos(e:Event):void { Avisos = new LeerDatosAvisos(); Avisos.addEventListener(Event.COMPLETE,Comenzar); } public function Comenzar():void { } } }
El error Esta en la funcion RecargarDatos. cuando ago Avisos.addEventListener no me error y dice que el metodo no esta definido....
Si ven algun otror error de concepto o programacion me gustarian que me lo señalen asi voy mejorando ...
saldudos...