En principio, cuando damos un "nombre de instancia" a un MC, flash lo interpreta como si hubiésemos creado una variable con ese mismo nombre siempre que en las Opciones de "Action Script 3.0 Settings" tengamos "checkeada" la opción de "Automatically declare stage instances" (declarar automáticamente las instancias del stage).
Imaginemos que tenemos en nuestra película un Mc con "nombre de instancia" mimc y de la Clase "Mimc". flash lo interpreta como si hubiéramos escrito
Código ActionScript :
mimc:Mimc=new Mimc()
addChild(mimc)
Si tuviéramos una clase de documento (digamos que se llama Main) tendríamos algo como
Código ActionScript :
package{
public class Main extends MovieClip{ //<--que EXTIENDA de MovieClip
private var mimc:Mimc //<--la variable la declaramos aquí
//para que sea accesible desde cualquier otra función de la Clase Main
public function Main(){ //<--la función "contructora" que se ejecuta al principio
mimc=new Mimc()
addChild(mimc)
}
}
}
Supongo que cuando lo hacemos con un botón dentro de un MC debería funcionar igual, lo que ocurre es que deberíamos escribir
Código ActionScript :
//mimc es o bien el nombre de instancia o el nombre de variable que le hallamos dado
mimc.miboton.addEventListener(MouseEvent.MOUSE_DOWN,hazAlgo)