Diciembre 29, 2003

Cuestión de flexibilidad (AS 2.0)

Pero esta flexibilidad no es exclusiva del "viejo" actionscript, sino que podemos hacer exactamente lo mismo con AS2.0

En primer lugar, vamos a crear nuestra clase de pruebas:

class net.designnation.exp.Dinamica{
 	public var prop1:String;
 	public var prop2:String;
 	public var prop3:String;
 	
 	function Dinamica(){
  	
  	}
 	
 	public function metodo(Void):Void{
  		trace("método ------");
  		trace(prop1 + " " + prop2 + " " + prop3);
  	}
}

Esta clase tiene que salvarse en disco en un archivo que se llame Dinamica, y en el path correspondiente (es decir, net/designnation/exp).

En el primer frame de la línea de tiempo principal escribimos lo siguiente:

import net.designnation.exp.*;

var testClass:Dinamica = new Dinamica();

testClass.prop1 = "Hola";
testClass["prop2"] = "estoy";
var cadena:String = "prop3";
testClass[cadena] = "probando";

//Ahora recupero los valores
for (var k=1;k<4;k++){
 	trace(testClass["prop"+k]);
}

//Y ejecuto el método definido

testClass.metodo();
//o bien
testClass["metodo"]();
//o bien 
var cadena2:String="metodo";
testClass[cadena2]();

stop();

Ahora, pues, podemos hacer que un método de la clase ejecute otro cuyo nombre se pasa como parámetro, o que una clase ejecute métodos de otra, o......

En fin, que, una vez más, actionScript demuestra ser un lenguaje muy potente y flexible.

Escrito por Cesar Tardaguila en: Diciembre 29, 2003 09:09 PM
Comentarios