Ver Mensaje Individual
  #9 (permalink)  
Antiguo 14/09/2009, 18:56
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Terminal de comandos en Flash AS3.0

Cita:
Iniciado por JK994 Ver Mensaje
... para HackmanC, ¿me podrías explicar paso por paso el código? muchas gracias por la ayuda.
Básicamente es lo mismo que te explica jahepi.

Cita:
Iniciado por jahepi Ver Mensaje
Código actionscript:
Ver original
  1. var objStr:String = "mc";
  2. var methodStr:String = "gotoAndStop";
  3. var param:Number = 25;
  4.  
  5. this[objStr][methodStr](param); //Evaluación de lo recibido por consola.
Cita:
Iniciado por HackmanC Ver Mensaje
Código actionscript:
Ver original
  1. btnButton.addEventListener(MouseEvent.CLICK, clickHandler);
  2. function clickHandler(event:MouseEvent):void {
  3.  
  4.     // txtText1.text ~ Nombre del MC
  5.     // txtText2.text ~ Propiedad o Método
  6.     // Otros txtTexts...
  7.  
  8.     if (typeof(this[txtText1.text][txtText2.text]) == "boolean") {
  9.         this[txtText1.text][txtText2.text] = false;
  10.     }
  11.     if (typeof(this[txtText1.text][txtText2.text]) == "function") {
  12.         this[txtText1.text][txtText2.text].call();
  13.     }
  14. }
Tienes que colocar un component Button (nombre de la instancia: btnButton) y dos components TextArea (nombre de las instancias: txtText1, txtText2) en el MovieClip principal. Y escribir el código anterior en el 'frame 1' del timeline.

btnButton.addEventListener se utiliza para amarrar el evento CLICK del botón con una función; es decir, la función que se ejecuta al presionar el Button.

Lo demás es bastante difícil de explicar por que lleva muchos conceptos diferentes.

this[txtText1.text][txtText2.text] <-- Explicar esto se me hace muy difícil Busca información sobre 'this' y Arrays.
En el ejemplo solo escribí 'boolean' y 'function' para que busques mas información sobre 'typeof', y puedas manejar Integer, Strings, etc.

Y aunque se puede escribir this[txtText1.text][txtText2.text](), dejé como ejemplo call(), para que buscaras mayor información sobre call() y apply(), en el caso que el método tengan muchos parámetros. Como por ejemplo: .apply(null, txtText3.text), donde txtText3 sería un nuevo TextArea donde escriben los parámetros a aplicar al método, que puede llevar 1, 2, 3 o N parámetros.

Saludos,