Menú (informática)
# Menú (informática)

En informática, un menú es una serie de opciones que el usuario puede elegir para realizar determinadas tareas.

Los menús están contenidos en una barra de menús, la cual se puede decir que es una propiedad que tienen las ventanas para poseer menús, esto es porque la barra de menús en sí misma no es una ventana como lo puede ser un botón de comando o un cuadro de texto, pero tampoco es una barra de herramientas, sino un objeto contenedor de otros menús.

## Estructura de los menús

Los menús se organizan siguiendo el principio de los árboles, esto quiere decir que un menú puede tener menús hijos y menús padres. Inicialmente, al crear una barra de menús, el identificador del objeto nuevo es un identificador de menús válido, además de que la barra de menús queda como la raíz, el nodo principal, o en otras palabras, un menú sin padres.

De ahí se pueden empezar a crear menús hijos como lo puede ser uno que se llame Archivo, otro Edición y otro Ver, que tendrán como padre al manipulador (handler) del menú raíz; estos menús pueden tener menús hijos, así, archivo, descendiendo de MenuBar puede engendrar Abrir, Guardar, Guardar como, Codificación, etc; y siguiendo estas mismas reglas, Codificación, descendiente de Archivo puede engendrar un submenú con los comandos ASCII, Unicode, UTF-8, entre otros.

La susodicha organización pertenece a una capa de abstracción que es tratada en el proceso de programación mediante APIs del sistema operativo.

## Tipos de menús

Los tipos de menús más usuales son:

* Normales. Son los que tienen el predominio más alto en las aplicaciones.
* Casillas de verificación. Al hacer clic sobre ellos, se activa un indicador y su estado cambia a «marcado/desmarcado».
* Botones de radio o Radio buttons. Son grupos de botones donde sólo se puede tener activo uno de todos ellos y su indicador acostumbra ser una viñeta.
* Submenús. Son los menús que tienen menús hijos, es decir que no se puede hacer clic en él, en vez de eso hay que seleccionar uno de sus «hijos»; habitualmente traen consigo una flecha en la lateral derecha indicando la naturaleza del mismo.
* Separadores. Son menús sin nombre ni valor (pero sí un handler). Se muestran como líneas grises opacas entre la lista de comandos.

## Características de los menús

Aunque los menús son personalizables, hay características que se pueden apreciar siempre que se ve un menú:

* Icono. En el lado izquierdo hay un espacio para almacenar ya sea un indicador del tipo de menú (viñeta para el radiobotón y paloma para la casilla de verificación) o un pequeño gráfico que haya sido implementado.
* Mnemónico. Una letra subrayada que indica qué carácter forma junto con la tecla Alt un atajo de teclado que habilita el menú.
* Teclas de acceso rápido. Como su mismo nombre lo dice, es una combinación de teclas que activa al menú una vez que ha sido presionada. Tienden a aparecer en el extremo derecho de cada comando de la lista.
