tengo un movieclip que cargo desde la biblioteca, en tiempo de ejecucion se crean varios de ellos esta vinculado desde la biblioteca. este es el codigo.
Código ActionScript :
//Variables
var Ruta_xml:String = "../xml/bandas.xml";
var cnt_array:Number;
var Nombre:Array = new Array();
var Categoria:Array = new Array();
var Discos:Array = new Array();
var Temas:Array = new Array();
var scMover:Boolean = false;
//Lectura XML
var Bandas:URLLoader = new URLLoader();
Bandas.addEventListener(Event.COMPLETE, xml);
Bandas.load(new URLRequest(Ruta_xml));
//Recorrido del XML
function xml(e:Event):void {
var Lista:XML = new XML(e.target.data);
var i:Number;
//Pasar los datos del XML a un arreglo.
for (i=0; i < Lista.bandas.length(); i++) {
Nombre[i] = Lista.bandas[i].nombre;
Categoria[i] = Lista.bandas[i].categoria;
Discos[i] = Lista.bandas[i].discos;
Temas[i] = Lista.bandas[i].temas;
cnt_array = i;
}
CargarLista();
}
//Cargando Lista
function CargarLista() {
//Creando lista
cnt_array += 1;
var i:Number;
var Lista_mc:MovieClip = new MovieClip();
for (i=0; i < cnt_array; i++) {
var clip_Lista:Lista_Bandas = new Lista_Bandas();
clip_Lista.x = 0;
clip_Lista.y = i*20;
clip_Lista.numero_txt.text = i+1+"";
clip_Lista.nombre_txt.text = Nombre[i];
clip_Lista.categoria_txt.text = Categoria[i];
clip_Lista.discos_txt.text = Discos[i];
clip_Lista.temas_txt.text = Temas[i];
Lista_mc.addChild(clip_Lista);
miPorcentaje.text = "Cargando: "+i;
}
var lst_x:Number = 40;
var lst_y:Number = 39;
var lst_w:Number = 350;
var lst_h:Number = 340;
//Alineando la pantalla de lista.
Lista_mc.x=lst_x;
Lista_mc.y=lst_y;
Lista_mc.width=lst_w;
//Dibujando la mascara
var maskSprite:Sprite=new Sprite();
maskSprite.graphics.beginFill(0x000000, 1);
maskSprite.graphics.drawRect(lst_x,lst_y,lst_w,lst_h);
maskSprite.graphics.endFill();
Lista_mc.mask=maskSprite;
//Añadir Clips dinámicos
addChild(maskSprite);
addChild(Lista_mc);
addChild(Scroll_mc);
}
function Reproductor(Texto:String) {
mitexto_txt.text = Texto
}Como ven cada clip_Lista se añaden en el clip Lista_mc, ahora cada clip_Lista tiene una programación interna que es esta.
Código ActionScript :
lista_btn.addEventListener(MouseEvent.MOUSE_OVER , miOver);
lista_btn.addEventListener(MouseEvent.CLICK , miClick);
function miOver(event:MouseEvent):void {
gotoAndPlay(2);
}
function miClick(event:MouseEvent):void {
gotoAndPlay(2);
trace(nombre_txt.text);
}
stop();El lista_btn me sirve solo para dar el efecto al boton y no esta creado mediante código.
En tonces tengo La pantalla principal del Flash, luego un MC creado para contener las lista y poder darle una máscara. la pregunta es como puedo hacer que la funcion miClick llame a la funcion Reproductor, e intentado con
_root.Reproductor(nombre_txt.text);
this._parent.Reproductor(nombre_txt.text);
DisplayObject.parent.Reproductor(nombre_txt.text);
pero nada funciona !! como lo puedo hacer ...
El esquema sería el siguiente Root -> Listas_mc -> clip_Lista.nombre_txt.text , umm estaría llamando una funcion de Root desde un MC que esta dentro de otro... ya me estoy confundiendo y he bucado mucho pero no encuentro nada ... alguna ayudita por favor.
