Comunidad de diseño web y desarrollo en internet online

Paso de parametros AS2Nivel 1

Citar            
MensajeEscrito el 08 Mar 2009 06:30 pm
Hola a todos..tengo problemas con paso de parametros en actionscript 2.0 :( tengo una constructor que envia una cadena a otra función mi problema es que me dice que la variable tiene el valor undefined, como si no estuviese inicializado. aHH y sólo uso fotograma para pasar el boton y la cadena.

ejemplo:

Código ActionScript :

private var Boton:Button;
private var Cad:String;

/*aqui no hay problema si recibe bien el valor de la string
los probe con trace*/
function MiConstructor(b:Button, s:String){
   this.Boton=b;
   this.Cad=s;
   this.Boton.onPress=PasaControl;
}

function PasaControl(){
   trace("Pasar el parametro a Clase " + this.Cad); //Aqui dice undefined 
    x=new Clase(this.Cad);//y mi otra clase obviamente recibe undefined...buahhh
   }


Otra cosa , quisiera cambiar la String por un char..pero no se si se pueda.
De antemano muchas graxias por ayudar a esta novata...

Por quit123

24 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Mar 2009 06:31 pm
Tambien intente con sin el this, con _root, y nada..=(

Por quit123

24 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Mar 2009 11:28 pm
El problema es que al declarar a "PasaControl" como la función onPress de el botón, dentro de la misma al referirte a "this" te refieres al boton en si y dentro del botón no hay ninguna variable "Cad", ahora de todas maneras no podrías acceder a esta variable dentro del evento de un botón, lo que normalmente se realiza en estos casos en AS2 es utilizar Delegate:

Código ActionScript :

import mx.utils.Delegate;

class MiConstructor {

   private var Boton:Button;
   private var Cad:String;

   public function MiConstructor(b:Button, s:String) {
      Boton = b;
      Cad = s;
      Boton.onPress = Delegate.create(this, PasaControl);
   }

   private function PasaControl() {
      
      trace("Pasar el parametro a Clase "+ Cad);//Aqui ya no dirá undefined  
      
   }

}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 09 Mar 2009 01:26 am
Muchas gracias, me sirvio tu respuesta elchininet =) y lo de Delegate no lo sabia..=O

Por quit123

24 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Mar 2009 01:49 am
para que sirve exactamente Delegate o cuando debo usarlo??

Por quit123

24 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Mar 2009 11:10 pm
Las dos preguntas tienen igual respuesta, el mayor uso es exactamente ese que te he mostrado.
Su implementación (a partir de Flash MX 2004) ha logrado que el manejo de componentes y sus eventos en AS2 se haga más flexible.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 10 Mar 2009 01:48 am
ok muchas gracias :lol:

Por quit123

24 de clabLevel



 

msie

 

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