Archivo

361 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
361
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Archivo

  1. 1. Diseño de menús Descripción de un menú Un menú es uno de los componentes más habituales en los programas Windows. Se basa en un conjunto de opciones desplegables a partir de una serie de opciones principales, que permiten organizar el acceso a las diferentes partes de la aplicación. A efectos de programación, cada opción de menú es tratada y se maneja de la misma forma que cualquier control dentro del formulario.
  2. 2. Sin ser imprescindible su uso, si es útil a nivel organizativo, ya que evita la sobrecarga de controles en el formulario. Hemos de tener en cuenta que si no incorporamos un menú, tendremos que utilizar otro control, un botón de comando por ejemplo, por cada opción que queramos ejecutar dentro del formulario, lo que ocupa más espacio y resulta menos estético, debido a la sobrecarga de controles que se produciría dentro del formulario. Lo anteriormente descrito se aplica en programas SDI, ya que si vamos a realizar un programa MDI, el uso de un menú para la ventana principal de la aplicación resulta obligatorio, siendo la forma que tiene la ventana MDI de invocar a las ventanas secundarias de la aplicación. Características de un menú Un menú está compuesto por un conjunto de opciones principales o nivel superior, que se disponen en la parte más próxima al título del formulario. De cada opción del nivel principal, se despliega unconjunto de opciones o menú de nivel inferior dependientes del principal. A su vez, desde las opciones de este segundo nivel se pueden seguir abriendo sucesivamente niveles más inferiores. Aunque la posibilidad de desplegar varios niveles de menús es muy interesante, de forma que podamos alcanzar un alto nivel de organización, no conviene, sin embargo, hacer un uso abusivo de esta cualidad, ya que un usuario puede tomar un mal concepto de una aplicación que le obliga a descender muchos niveles de menús para seleccionar una opción que es muy utilizada a lo largo de la aplicación. Propiedades de un control Menú Puesto que una opción de menú se maneja como un control más del formulario, podemos afirmar que una opción de menú es un objeto con sus propiedades y métodos. De las primeras vamos a ver una descripción: Name. Nombre del control. Caption. Texto que muestra la opción. Enabled. Valor lógico que habilita o deshabilita la opción. Cuando está deshabilitada, aparece en gris y el usuario no puede seleccionarla. Checked. Dato lógico que cuando es verdadero, muestra una marca en la opción de menú, para informar al usuario de que esa opción está activada. Visible. Si su valor es False, oculta la opción. Por defecto es True. Index. Permite definir una opción como parte de un array de controles u opciones de menú. Esta propiedad es útil para crear nuevas opciones de menú en tiempo de ejecución. Shortcut. Contiene el valor de una tecla de método abreviado o acelerador de teclado, como F5 o Ctrl+G. Cuando se define un acelerador, la combinación de teclas aparece junto a la descripción del menú. La ventaja de un acelerador es que no necesitamos navegar a través de las opciones del menú para llegar a una determinada. Si la que queremos tiene definido un acelerador, tecleándolo lanzaremos directamente la opción de ese menú. WindowList. En un formulario MDI, si damos el valor True a esta propiedad en una opción de nivel superior, el programa creará de forma transparente al usuario un submenú con las ventanas que tiene abiertas la aplicación, marcando la ventana activa.
  3. 3. En cuanto a métodos, el único disponible para el programador es Click(), que se dispara al seleccionar el usuario una opción del menú. Aquí deberemos incluir el código que se ejecutará para la opción de menú. El Editor de menús Para crear un menú en el formulario hemos de hacerlo usando la ventana de edición de menús, la cual abrimos de una de las siguientes maneras: Hacer clic con el botón derecho del ratón dentro del formulario, para visualizar el menú contextual del mismo. Dentro de este menú tenemos una opción para abrir el editor de menús. Pulsar el botón Editor de menús en la barra de herramientas de VB. Seleccionar el menú Herramientas + Editor de menús de VB. Usar la combinación de teclado Ctrl+E. Al abrir el editor de menús por primera vez, obtenemos una ventana similar a la que aparece en la figura 152 Los pasos para crear las opciones del menú son los siguientes: Introducir el Caption o título de la opción, que es la cadena de caracteres que aparecerá en el menú. Si deseamos que esta opción tenga una tecla de acceso rápido o hotkey, hemos de situar el carácter & precediendo a la letra que queramos actúe como hotkey. De esta forma, la letra aparecerá subrayada en tiempo de ejecución y podremos seleccionar la opción con la combinación de teclado Alt+hotkey si pertenece al nivel principal. Si es una opción incluida en un nivel inferior, debemos abrir primero el nivel y después pulsar la tecla de acceso rápido. Asignar un valor a Name, que es el nombre del control, y nos servirá para hacer referencia a él dentro del código. En este punto podemos asignar a la opción algún tipo de variante: habilitarla, marcarla, ocultarla, asignarle un acelerador de teclado o Shortcut, etc.
  4. 4. Completadas todas las propiedades de la opción, pulsamos Siguiente, con lo que pasará a la parte inferior de la ventana, en la zona de opciones ya creadas Un aspecto muy importante a tener en cuenta es el nivel en el que vamos a situar la opción. Si deseamos que esté situada en un nivel inferior, hemos de hacer clic en el botón con la flecha a la derecha y un grupo de puntos aparecerá en la zona de opciones indicando que esa opción es de nivel inferior. Cuantos más grupos de puntos haya, mayor profundidad tendrá la opción. De forma inversa, si queremos que una opción suba de nivel, hemos de hacer clic en el botón con flecha a la izquierda. Si la opción no tiene puntos, es que pertenece al nivel principal. Es posible cambiar la posición de una opción, haciendo clic en los botones con las flechas arriba o abajo la desplazaremos en una u otra dirección. Pulsando el botón Insertar crearemos una nueva opción vacía entre las opciones ya creadas. Pulsando el botón Eliminar borraremos la opción actualmente resaltada. Podemos agrupar diferentes opciones dentro de un mismo menú usando separadores o líneas divisorias. Simplemente hemos de poner un guión "-" en el Caption de la opción de menú. Añadir código a una opción de menú Una vez terminado el diseño del menú, tenemos dos formas de incluir el código que debe ejecutar: Desde la ventana de diseño del formulario, seleccionar la opción de menú, lo que abrirá la ventana de código del formulario, situándonos en el método Click(), que como hemos visto anteriormente es el único disponible para este control. Abrir la ventana de código del formulario, y buscar nosotros directamente en la lista de objetos el control a codificar. Creación de un menú Vamos a ver una aplicación que contenga un menú en el que sus opciones muestren las propiedades descritas anteriormente. Tomamos del grupo de ejemplos la aplicación llamada Menu. Una vez cargada en VB, abrimos su único formulario frmMenu que dispone de la siguiente estructura de menú:
  5. 5. De la misma forma, se puede cambiar la marca de la opción Enviando correo, pulsando el botón Enviar correo, lo vemos en el código fuente 171.

×