Comunidad de diseño web y desarrollo en internet online

ayuda con setChildIndex o lo q sea q necesite :'(

Citar            
MensajeEscrito el 26 Ene 2010 08:45 pm
hla de nuevo hice esto

Código ActionScript :

////////BOTONERA// 
stop();
fm_button.visible = false
var menu_label:Array = new Array("un boton", "Nombre de otro", 
                         "mas boton", "sigue otro boton",
                         "otro boton mas", "de nuevo boton");
var total:Number = menu_label.length;
var spacing:Number = 134;
var i:Number = 0;
var page:Number;
var main_menu:MovieClip = new MovieClip();
stage.addChild(main_menu);

for( i = 0; i < total; i++ )
{
   var btn = new flashmo_button();
   btn.name = "btn" + i;
   btn.x = fm_button.x + spacing * i;
   btn.y = fm_button.y;
   btn.flashmo_button_bg.gotoAndStop( i + 1 );
   btn.item_no = i;
   btn.addEventListener(MouseEvent.CLICK,intercambio);//aqui quiero que al clickar traiga al frente un mc contenido en otro mc; pero no se como vincular un mc secundario del mc principal a cada boton//
   
   var each_substring:Array = menu_label[i].split("|");  
   btn.flashmo_button_label.fm_label.text = each_substring[0];  
   btn.item_url = each_substring[1];
   main_menu.addChild(btn);
}


function intercambio(event:MouseEvent)//aqui intente hacer la funcion q se encargaria de traer al frente el mc; pero no me funciona; presiono cualquier boton y todos traen adelante y envian atras al mismo mc¡¡¡¡ayuda!!!!//
{
   fichas_mc.setChildIndex(fichas_mc.getChildAt(1),0)
}


lean lo q comente en el codigo y ayudenme por fis

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

msie8
Citar            
MensajeEscrito el 26 Ene 2010 08:52 pm
Si le das profundidad 0 al MovieClip este irá hacia atrás. Debes darle el index más alto:

Código ActionScript :

fichas_mc.setChildIndex(fichas_mc.getChildAt(1), fichas_mc.numChildren - 1);

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 26 Ene 2010 09:02 pm
gracias por esa acotacion, ya correji jeje; pero mi problema es q no hayo como vincular cada boton q genere con un cada mc secundario del mc principal; es decir, mis botones se llaman btn1.... y asi sucesivamente... y mis mc f1, f2... todos mis f estan en un mc principal llamado fichas_mc... pero no logro conseguir una manera de q btn4(por ejemplo) traiga al frente a f4... y asi sucesivamente; alguien ayudeme por fis

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

msie8
Citar            
MensajeEscrito el 26 Ene 2010 10:18 pm
Si vas a querer una interacción de esa forma, debe de tener todas tus ficha y botones en un solo contenedor para que funcione el setChildIndex.

Por Otaku RzO

BOFH

1890 de clabLevel

12 tutoriales
1 articulo

Genero:Masculino   Desarrollador de GAIA Bastard Operators From Hell

Lima - Perú

firefox
Citar            
MensajeEscrito el 26 Ene 2010 10:38 pm
Lo que te aconseja @Otaku RzO es cierto, mientras más niveles insertes más se te puede complicar el trabajo. Ahora, lo que puedes hacer es capturar el nombre del botón, extraer su número y situar la ficha con ese número en el mayor nivel de su DisplayObjectContainer:

Código ActionScript :

.
.
.
    main_menu.addChild(btn).name = "btn" + i;

}

function intercambio(event:MouseEvent):void{
    var index:uint = uint(evt.currentTarget.name.replace("btn", ""));
    fichas_mc.setChildIndex(fichas_mc.getChildByName("f" + index), fichas_mc.numChildren - 1);
} 

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 27 Ene 2010 01:14 pm
que quiere decir evt? lo que pasa es q no puedo tener las fichas y botones en un solo clip porque los botones son en realidad un boton q se duplica 6 veces y toma sus nombres de un array; asi q no sabria como combinar ambas cosas..

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

msie8
Citar            
MensajeEscrito el 27 Ene 2010 01:58 pm
Parece que evt es en realidad event dentro de esa función, debería ser:

Código ActionScript :

function intercambio(evt:MouseEvent):void{
Que no puedes tenerlos en un solo clip la verdad no lo veo díficil. Deben haber varias soluciones para eso (otro array u otro manejo para los nombres).

Por Otaku RzO

BOFH

1890 de clabLevel

12 tutoriales
1 articulo

Genero:Masculino   Desarrollador de GAIA Bastard Operators From Hell

Lima - Perú

firefox
Citar            
MensajeEscrito el 27 Ene 2010 02:23 pm
gracias!! a todos ya me anda 1000 gracias!!

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

msie8
Citar            
MensajeEscrito el 27 Ene 2010 05:43 pm
Es exactamente como aclara @Otaku RzO, evt debería ser event o a viceversa. Error mío de transcripción.
Un saludo

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.