ActionScript - Menu Dinamico

 
Vista:

Menu Dinamico

Publicado por Mauricio Morales (1 intervención) el 28/07/2006 17:05:17
Hola amigos. soy nuevo en esto de actionscript y necesito un poco de ayuda para crear un menu dinamico.

yo ya he avanzado con el menu y este funciona pero tiene un pequeño problema. me explico, este es un menu que contiene "menu" y "submenu", osea al principio apareceran 5 botones los cuales al ser presionados aparaeceran las opciones de este debajo del boton, corriendose todos los botones que se encuentren abajo.
la idea es que si presiono otro boton, el que ya estaba abierto se cierre y se abra el que presione. en el codigo que pondre mas abajo esta echo el problema que tiene es que cuando tengo un boton presionado y presiono otro este sube muy rapido y no de la forma que yo quiero(pausado).. bueno espero que me puedan ayudar. desde ya les doy las gracias.

para que el codigo funcione se deben tener dos movieclip, con vinculacion uno es boton_mc y el otro menu_mc

Codigo.

var ancho_bt = 33; //ancho de los botones y mc
var acum_posi = 0;
var p=0;

//genera los botones principales
for (p=0; p<5; p++) {
var bt_mesant = attachMovie("boton_mc","boton_mc"+p, p);
bt_mesant._x = 10; //POSI X
bt_mesant._y = ancho_bt * p; // POSI Y
_root.bt_mesant.nombre.text = "Movie " + p + " " + bt_mesant;
}

//mueve los botones dinamicamente hacia arriba // se supone
function _mover(movie, posi){
yEsc = new Array(movie._y, posi);
movie.onEnterFrame = function() {
movie._y -= (yEsc[j]+15)/15;
if (movie._y > posi){
}else{
movie._y = posi;
delete this.onEnterFrame;
}
}
movie._y = posi;
}

//mueve los botones dinamicamente hacia abajo // se supone
function _mover2(movie, posi){
yEsc = new Array(movie._y, posi);
j=1;
movie.onEnterFrame = function() {
if (movie._y < posi){
movie._y += (yEsc[j]+15)/15;
}else{
movie._y = posi;
delete this.onEnterFrame;
}
}
}

function _alpha_mc(mc){
mc.onEnterFrame=function(){
//trace(mc._alpha);
if(mc._alpha > 100){
delete mc.onEnterFrame;
}
mc._alpha+=10;
//mc._alpha = mc._alpha;

}
}

//muesta los movieclip, k serian los submenu
function _llama_mc(posi){
for (r=1; r<3; r++) {
var bt_mesant = attachMovie("menu_mc","menu_mc"+r*10, r*10);
bt_mesant._x = 10; //POSI X
bt_mesant._y = (r*33) + posi; // POSI Y
bt_mesant._alpha = 0;
_alpha_mc(bt_mesant);
}
}

//al presionar el boton viene aki
function _envio(mc_bt){
var posi_llegada = 0;
var indica = 0;
for (var i=1; i<p; i++) {
posi_llegada = 33*i;
_mover(_root["boton_mc"+i],posi_llegada);
}

var cant = 66;
var posi = 0; //indicara posicion en la que se debe comenzar a bajar en cascada
for (var i=0; i<p; i++) {
if (_root["boton_mc"+i] == mc_bt){
posi = i+1;
}
}
_llama_mc(mc_bt._y);

for (var i=posi; i<p; i++) {
_mover2(_root["boton_mc"+i], _root["boton_mc"+i]._y+cant);
}

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Menu Dinamico

Publicado por Marcos (1 intervención) el 31/07/2006 12:32:35
Flash dispone una clase llamada mx.transitions, que te permite ejecutar movimientos y acciones para movieclips de distintas formas y maneras, en el siguiente enlace encontras ejemplos ya echos con su código, es muy sencillo de utilizar y no consume tantos recursos como el onEnterFrame.

http://klr20mg.com/?p=3

Espero que te ayude.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Menu Dinamico

Publicado por DrRow (1 intervención) el 25/10/2007 16:58:25
claro que si, es evidente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar