Cita:
Iniciado por JK994 ... 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
Código actionscript:
Ver originalvar objStr:String = "mc";
var methodStr:String = "gotoAndStop";
var param:Number = 25;
this[objStr][methodStr](param); //Evaluación de lo recibido por consola.
Cita:
Iniciado por HackmanC
Código actionscript:
Ver originalbtnButton.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void {
// txtText1.text ~ Nombre del MC
// txtText2.text ~ Propiedad o Método
// Otros txtTexts...
if (typeof(this[txtText1.text][txtText2.text]) == "boolean") {
this[txtText1.text][txtText2.text] = false;
}
if (typeof(this[txtText1.text][txtText2.text]) == "function") {
this[txtText1.text][txtText2.text].call();
}
}
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,