Menu desplegable

Mi problema es bastante tonto pero me está dando problemas. Es el siguiente.
Quiero hacer un menu desplegable:
Al ponerme encima de un texto(ejemplo "a") a su lado debe salir un desplegable con 3 posibles botones. Al salir de "a" el desplegable debe desaparecer pero a su vez si estoy encima de alguno de estos 3 botones del desplegable, al salir también debe ocultarse.
No sé si me entiendes pero ojalá me escribieras un ejemplo.

1 respuesta

Respuesta
1
Solo debes utilizar la propiedad visible de los sprites.
Por ejemplo:
On beginSprite me
-- Inicializacion boton A
sprite(11).visible=FALSE
sprite(12).visible=FALSE
sprite(13).visible=FALSE
end
on mouseEnter me
-- entrada al boton A
sprite(11).visible=TRUE
sprite(12).visible=TRUE
sprite(13).visible=TRUE
end
on mouseLeave me
-- salida al boton A
sprite(11).visible=FALSE
sprite(12).visible=FALSE
sprite(13).visible=FALSE
end
En los sprites 11,12,13 pones los subbotones del botón A.
Haces lo mismo para otros botones B, C, D.
Eso está bien pero el problema es que al salir del botón A, el desplegable(sprite 11,12 y 13) se oculta, es decir, se hace invisible y lo interesante es que se mantenga para poder seleccionar una de las opciones. Luego al salir de ese desplegable se volvería a ocultar.
Gracias
Lo que puedes hacer, es visiblilizar el submenú cuando entras a A, pero lo apagas solo cuando entras a B o C, es decir, el evento lo haces cuando entras al otro botón y no cuando sales del primero.
En todos los botones ABC utilizas handlers que haga referencia a sus elementos del submenú.
-- En el botón A
On CierraSubMenu me, msg
sprite(11).visible=msg
sprite(12).visible=msg
sprite(13).visible=msg
end
-- en el boton B
on CierraSubMenu me, msg
sprite(15).visible=msg
sprite(16).visible=msg
sprite(17).visible=msg
end
pero además agregas un eventos del mouse
on mouseEnter me
sendAllSprites(#CierraSubMenu,FALSE)
sprite(11).visible=TRUE
sprite(12).visible=TRUE
sprite(13).visible=TRUE
end
Las herramientas para hacer ese menu ya las tienes, ahora solo te hace falta encontrar la mejor forma de hacerlo.
;-)
Si tiene problemas me avisas y te buscaré algún ejemplo, porque en este momento no tengo uno.
C

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas