« Cuestión de flexibilidad | Inicio | Mi primera extensión!!! (jsfl) »

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.