Establecer orden de tabulación
Por ejemplo, supongamos que crea dos cuadros de texto denominados Texto1 y Texto2 y luego crea un botón de comando denominado Commandl. Cuando se inicia la aplicación, Texto1 tiene el foco. Al presionar la tecla TAB, el foco se moverá entre los controles en el orden en que se crearon, como se muestra en la Figura 3.20.
Establecer la propiedad TabIndex cambiará el orden de tabulación de un control. La propiedad TabIndex del control determina su posición en el orden de tabulación. Según las reglas predeterminadas, el valor TabIndex del primer control creado es 0, el valor TabIndex del segundo es 1, y así sucesivamente. Cuando cambia la posición del orden de tabulación de un control, Visual renumera automáticamente las posiciones del orden de tabulación de otros controles para reflejar las inserciones y eliminaciones. Por ejemplo, para que Comando1 sea el primero en la secuencia de teclas de tabulación, los valores de TabIndex de otros controles se ajustarán automáticamente hacia arriba, como se muestra en la siguiente tabla.
Debido a que la numeración comienza en 0, el valor máximo de TabIndex es siempre uno menos que el número de controles en el orden de tabulación. Incluso si el valor de la propiedad TabIndex es mayor que el número de controles, Visual Basic convertirá este valor al número de controles menos uno.
Tenga en cuenta que los controles que no pueden obtener el foco, así como los controles no válidos e invisibles, no tienen una propiedad TabIndex y, por lo tanto, no se incluyen en el orden de tabulación. Estos controles se omitirán cuando se presione la tecla TAB.
Eliminar controles en orden de tabulación
Normalmente, al presionar la tecla TAB durante el tiempo de ejecución se selecciona cada control en la secuencia de pestañas. Establezca la propiedad TabStop del control en False(0) para eliminar el control del orden de tabulación.
Un control cuya propiedad TabStop está establecida en False aún mantiene su posición en el orden de tabulación real, excepto que el control se omite cuando se presiona la tecla tab.
Tenga en cuenta que un grupo OptionButton tiene solo una estación de pestaña. La propiedad TabStop del botón seleccionado (es decir, el botón cuyo valor es Verdadero) se establece automáticamente en Verdadero, mientras que la propiedad TabStop de otros botones es Falso.
Conceptos básicos del menú
Si una aplicación proporciona un conjunto de comandos al usuario, los menús proporcionan una manera conveniente de agrupar comandos y hacerlos fácilmente accesibles para el usuario.
La Figura 3.21 ilustra los elementos de la interfaz del menú de un formulario sin título.
La barra de menú aparece inmediatamente debajo de la barra de título del formulario y contiene uno o más títulos de menú. Cuando hace clic en el título de un menú (como "Archivo"), se despliega una lista que contiene los elementos del menú. Los elementos del menú pueden incluir comandos (como Nuevo y Salir), separadores y títulos de submenú. Cada elemento del menú que ve el usuario corresponde a un control de menú definido en el Editor de menús (el Editor de menús se analiza más adelante en este capítulo).
Para que su aplicación sea simple y fácil de usar, los elementos del menú deben agruparse por su funcionalidad. Por ejemplo, los comandos relacionados con archivos "Nuevo", "Abrir" y "Guardar como" en la Figura 3.21 se enumeran en el menú "Archivo". Algunos elementos del menú realizan acciones directamente, como el elemento del menú "Salir" en el menú "Archivo" que cerrará la aplicación. Otros elementos del menú muestran un cuadro de diálogo, una ventana que solicita al usuario que proporcione la información que la aplicación necesita para realizar una acción. Estos elementos del menú deben ir seguidos de una elipse (...). Por ejemplo, cuando selecciona Guardar como... en el menú Archivo, aparece el cuadro de diálogo Guardar archivo como.
Un control de menú es un objeto; al igual que otros objetos, tiene propiedades que definen su apariencia y comportamiento. Las propiedades de título, las propiedades habilitadas y visibles, las propiedades marcadas y otras propiedades se pueden configurar en tiempo de diseño o ejecución. El control de menú contiene solo un evento, el evento Click, que se llama cuando se selecciona el control de menú con el mouse o el teclado.
Para obtener más información sobre el control de menú, consulte "Creación de menús con el Editor de menús" en el Capítulo 6, "Creación de la interfaz de usuario".
Menú emergente
Un menú emergente es un menú flotante que se muestra en el formulario y es independiente de la barra de menú, como se muestra en la Figura 3.22. Los elementos que se muestran en un menú emergente dependen de la posición del puntero cuando se presiona el botón derecho del mouse. Por lo tanto, un menú emergente también se denomina menú contextual (en Windows 95, al hacer clic con el botón derecho del mouse se activa el contexto). menú.) Se debe utilizar un menú emergente para proporcionar una forma eficiente de acceder a comandos contextuales comunes. Por ejemplo, haga clic derecho en un cuadro de texto y aparecerá un menú contextual (como se muestra en la Figura 3.22).
Cualquier menú con al menos un elemento de menú se puede mostrar como un menú emergente en tiempo de ejecución. Utilice el método PopupMenu para mostrar un menú emergente.
Para obtener más información sobre los menús emergentes, consulte "Creación de menús con el Editor de menús" en el Capítulo 6, "Creación de la interfaz de usuario".
Utilice el editor de menú
Con el "Editor de menús", puede agregar nuevos comandos a menús existentes, reemplazar comandos de menú existentes con sus propios comandos, crear nuevos menús y barras de menús, y cambiar y eliminar menús y barras de menús existentes. La principal ventaja del Editor de menús es su facilidad de uso. Los menús se pueden personalizar de forma totalmente interactiva con una programación mínima.
Para mostrar el Editor de menús,
Seleccione "Editor de menú" en el menú "Herramientas". Esto abrirá el "Editor de menú", como se muestra en la Figura 3.23.
La mayoría de las propiedades de control del menú se pueden configurar usando el Editor de menús. Asimismo, todas las propiedades del menú están disponibles en la ventana Propiedades. Normalmente, los menús se crean en el Editor de menús, pero para cambiar rápidamente propiedades individuales, utilice la ventana Propiedades.
Para obtener más información sobre la creación de menús y el uso del Editor de menús, consulte "Creación de menús con el Editor de menús" en el Capítulo 6, "Creación de la interfaz de usuario".
Preguntar al usuario con un cuadro de diálogo
En las aplicaciones basadas en Windows, los cuadros de diálogo se utilizan para solicitar al usuario los datos necesarios para que la aplicación continúe ejecutándose o para mostrar información al usuario. Un cuadro de diálogo es un tipo especial de objeto de formulario que se puede crear de tres maneras:
El código que utiliza las funciones MsgBox o InputBox puede crear cuadros de diálogo predefinidos.
Cree cuadros de diálogo personalizados utilizando formularios estándar o personalizando cuadros de diálogo existentes.
Utilice el control CommonDialog para crear cuadros de diálogo estándar como Imprimir y Abrir archivo.
La Figura 3.24 es un ejemplo del uso de la función MsgBox para crear un cuadro de diálogo predefinido.
Cuando se llama a la función MsgBox en el código, se muestra el cuadro de diálogo. El código es el siguiente:
Se encontró un error de MsgBox al intentar abrir un archivo, &vbCrLf&por favor vuelva a intentarlo.,vbExclamation,TextEditor
Debe proporcionar tres datos o tres parámetros a la función MsgBox: texto del mensaje, una constante (valor numérico) que determina el tipo de cuadro de diálogo y un título. Crear cuadros de diálogo es más fácil porque los estilos pueden usar una variedad de combinaciones de botones e íconos.
Dado que la mayoría de los cuadros de diálogo requieren la interacción del usuario, normalmente se muestran como cuadros de diálogo modales. Los cuadros de diálogo modales deben cerrarse (ocultarse o descargarse) antes de continuar usando otras partes de la aplicación. Por ejemplo, si debe hacer clic en "Aceptar" o "Cancelar" antes de cambiar a otros formularios u otros cuadros de diálogo, entonces este cuadro de diálogo es un cuadro de diálogo modal.
No es necesario cerrar un cuadro de diálogo no modal para permitir que el foco se mueva entre el cuadro de diálogo y otros formularios. Mientras se muestra el cuadro de diálogo, puede continuar trabajando en cualquier otro lugar de la aplicación actual. Los cuadros de diálogo no modal son raros; generalmente se muestran porque la aplicación requiere una respuesta antes de continuar. El cuadro de diálogo "Buscar" del menú "Editar" en Visual Basic es un cuadro de diálogo no modal. Utilice cuadros de diálogo no modal para mostrar información o comandos utilizados con frecuencia.
Más información Para obtener más información sobre la creación de cuadros de diálogo, consulte el Capítulo 6, "Creación de la interfaz de usuario".
->