Menu
in

Programar con Visual Basic (VII)

A partir de esta entrega veremos cuales son y como se emplean los controles que dispone Visual Basic. Son estos elementos los que nos permitirán crear la interfaz con el usuario de nuestras aplicaciones, y también manejar muchas de las potentes características que dispone esta herramienta.

Los controles, que pueden arrastrarse y soltarse sobre los formularios (Forms) de Visual Basic,  son componentes extremadamente importantes para la construcción de las aplicaciones. Son, en resumen, los que permiten confeccionar la interfaz que el usuario utilizara para controlar las funciones de nuestro programa.

Proveen mecanismos para proporcionar información al usuario (Label, ToolTip, PictureBox, TreeView, etc.), organizar los datos para que sean fácilmente interpretados (GroupBox, TabControl, Panel, etc.), ingresar datos (TextBox, ComboBox, MonthCalendar, etc.), seleccionar una(s) opcion(es) de entre varias (ListBox, CheckBox, RadioButton, etc.) o interactuar con elementos que no pertenecen, necesariamente, a nuestra aplicación (OpenFileDialog, SaveFileDialog, PrintDocument, etc.). Además, algunos controles especiales nos proporcionan herramientas para manejar o complementar otros controles (ImageList, ToolTip, etc.)

No veremos absolutamente todos los disponibles, pero la información que proporcionaremos en esta entrega y las dos o tres siguientes bastará para que el lector pueda sacar provecho de todos los controles que posee Visual Basic. Esta es la paleta de controles disponibles:

Comenzaremos viendo como utilizar los “Controles comunes”. Es bastante difícil encontrar alguna aplicación que no utilice alguno de estos controles como parte de su interfaz. El primero de ellos, cuyo icono es una pequeña flecha, no es en realidad un control, sino la herramienta que podemos usar para mover o seleccionar alguno de los controles que tenemos en nuestro formulario.

Hecha esta aclaración, comencemos con el análisis. Lo primero que haremos será abrir el Microsoft Visual Basic 2005 Express, seleccionemos “Aplicación para Windows”, y asegurémonos que tenemos el “Form1” en la pantalla, en modo diseño. Deberíamos tener a la vista algo más o menos así:

El primer control que usaremos será “Button”. Como habrás adivinado, se trata del clásico botón presente en prácticamente la totalidad de las ventanas de cada programa. Este control puede ejecutar una acción cuando el usuario hace clic sobre él.

Utilizando la flecha, arrastraremos uno hasta el formulario “Form1”. No importa demasiado, al menos por ahora, en que posición lo coloquemos, ni tampoco su tamaño. Es más, puede ser un buen momento para que pases unos minutos “jugando” con la flecha y el control, para asegurarte que comprendes de qué forma puedes arrastrarlo por el formulario o cambiar su tamaño. Una vez colocado el control, el formulario se verá como sigue:

Lo primero que vamos a aprender es como cambiarle el nombre, ya que “Button1” difícilmente sea apropiado para nuestra aplicación. Vamos a modificar el botón para que termine la aplicación cuando le hacemos clic, así que un nombre apropiado para el sería “Salir”. Debemos, como se ve en la imagen, utilizar el cuadro “Propiedades” para cambiar el valor correspondiente al atributo “Text” del control. Simplemente, hacemos clic sobre ese renglón, y escribimos “Salir” (o lo que queramos poner). Debería quedar como la figura de la derecha.

Con esto tenemos el botón con el texto deseado escrito en él. Ahora, vemos como hacer para que, cuando el usuario haga “clic” sobre el control, la aplicación termine. Para ello, debemos escribir un trozo de código que se ejecute cuando esta acción tenga lugar. La forma de hacerlo es muy sencilla: simplemente, damos un doble clic sobre el botón, y Visual Basic pasará al Form.vb, tal como se ve en la figura:

El IDE de Visual Basic nos facilita mucho las cosas. Tanto, que como puede verse nos lleva directamente al lugar exacto donde debemos escribir el código que se ejecutará, en tiempo de ejecución, al pulsar el botón. Como queremos que la aplicación termine cuando esto ocurra, simplemente escribimos “End”:

Una vez hecho esto, ya podemos probar nuestro programa para ver si funciona correctamente. Para ello, basta con presionar “F5” o hacer clic sobre la flecha verde de la barra de herramientas que tenemos en la parte superior del IDE, debajo del menú. El programa arrancará, y se verá más o menos como sigue:

Obviamente, ya habrás hecho clic sobre el botón y comprobado como se cierra la ventana.

Por supuesto, podemos hacer cosas mucho más interesantes con este control. Aprovecharemos, de paso, para aprender a utilizar la función MsgBox(), que permite desplegar pequeñas ventanas con un mensaje (y algunos botones) en ella. Su sintaxis es la siguiente:

MsgBox(prompt[, buttons][, title][, helpfile, context])

Donde prompt, que obligatoriamente debe estar, es una cadena que representa el texto que aparecerá  en el cuadro de diálogo. La longitud máxima de prompt es de unos 1024 caracteres, variando con el ancho de los caracteres utilizados.

Buttons es un parámetro opcional. Es una expresión numérica que corresponde a la suma de los valores que especifican el número y el tipo de los botones que se pretenden mostrar, el estilo de icono que se va a utilizar, la identidad del botón predeterminado y la modalidad del cuadro de mensajes. Si no ponemos nada (o ponemos “0”), solo aparecerá un botón con el texto “Ok” que cerrará el cuadro de dialogo cuando le demos clic.

Title es otra cadena opcional, que se muestra en la barra de título del cuadro de diálogo. Si se omite este parámetro, en la barra de título se verá el nombre de la aplicación.

Helpfile también es opcional. Es la cadena que identifica el archivo de ayuda relacionado con el cuadro de dialogo. Volveremos sobre este tema cuando tratemos la forma de implementar ayuda interactiva en nuestras aplicaciones. El parámetro context también se relaciona con la ayuda.

Veamos un ejemplo. La siguiente línea

MsgBox("Aprendiendo Visual Basic", 0, "NeoTeo")

genera un cuadro de diálogo con el texto "Aprendiendo Visual Basic", un solo botón con el texto “Ok” y  el titulo “NeoTeo”. Tal cual se ve en la imagen:

Ahora bien, seguramente te estas preguntando “¿Cómo hago yo para enterarme que poner para crear cada combinación de botones?”. Y nosotros, rápidamente, te damos la respuesta:

Como puede verse, Visual Basic proporciona una palabra clave para que no tengamos que recordar números extraños. El siguiente código

MsgBox("Error grave, se ha perdido la información",VbAbortRetryIgnore + VbCritical,"Error grave")

Muestra como podemos utilizarlas. Y la figura de abajo el resultado que produce:

Lo interesante de MsgBox() es que devuelve un código que nos indica que botón ha pulsado el usuario. Esto significa que, si somos lo suficientemente hábiles a la hora de escribir nuestros programas, podremos realizar diferentes acciones en respuesta a la respuesta (¡ops!) del usuario.

El siguiente código muestra un aviso de alerta con los botones Anular, Reintentar y Omitir. Luego, utilizando la instrucción If-Then, el programa analiza la respuesta del usuario y muestra otro cuadro de diálogo que nos confirma cual fue el botón presionado:

       Dim a As Integer       a = MsgBox("Error grave, se ha perdido la información", vbAbortRetryIgnore + vbCritical, "Error grave")
       If a = vbAbort Then           MsgBox("Presionaste Anular")       End If
       If a = vbRetry Then           MsgBox("Presionaste Reintentar")       End If
       If a = vbIgnore Then           MsgBox("Presionaste Omitir")       End If

Como puede verse, resulta muy simple utilizar los controles disponibles en Visual Basic. Hoy no hemos visto más que una pequeñísima parte de las opciones de uno de sus controles, pero afortunadamente, la mayor parte de las características y propiedades de un control existen y se utilizan de la misma forma en casi todos los demás. Esto facilitará mucho nuestro aprendizaje.

Capítulos anteriores:

Capítulo 1
Capítulo 2
Capítulo 3
Capítulo 4
Capítulo 5
Capítulo 6

Escrito por Ariel Palazzesi

Leave a Reply