TEMA 15: Cuadros de Diálogo
Los cuadros de diálogo son ventanas que permiten visualizar mensajes de aviso o error, preguntar datos al usuario, mostrarle información, etc. Su utilización evita tener que saturar de controles los Formularios. Generalmente, suelen ser de tamaño fijo y no presentan controles de maximización y minimización.
INTRODUCIÓN DE TEXTOS
Para que el usuario pueda suministrar datos a la aplicación a través de un cuadro de diálogo Visual Basic dispone de la función InputBox. Esta función despliega un cuadro de diálogo predefinido en el que, además de visualizarse un mensaje de petición de datos, el usuario puede escribir un texto. El texto escrito es devuelto por la función en forma de cadena de caracteres.
Estos cuadros de diálogo incluyen un cuadro de texto y los botones Aceptar y Cancelar, para que el usuario pueda confirmar o rechazar el texto que ha sido escrito. La sintaxis de la función es la siguiente:
· InputBox (mensaje[, título[, defecto[, posx[, posy]]]])
La cadena de caracteres título será visualizada en la barra de título de la caja de diálogo, si se omite se pone como título el nombre de la aplicación. La cadena de caracteres defecto especifica el texto que aparecerá en la caja de texto, si se omite, la caja de texto aparecerá vacía. Los argumentos posx y posy son las coordenadas x e y, medidas desde la izquierda y desde la parte superior de la pantalla, respectivamente, expresadas en twips; se se omiten la caja de diálogo se visualizará centrada horizontalmente y a un tercio de la parte superior de la pantalla. Ejemplo:
Nombre = InputBox ("Palabra de paso:",,"Javier")
VISUALIZACIÓN DE MENSAJES
Para mostrar mensajes en un cuadro de diálogo, Visual Basic dispone de la función MsgBox. La sintaxis de la función es la siguiente:
· MsgBox mensaje[, botones[, título]]
La cadena de caracteres título será visualizado en la barra de título de la caja de diálogo; si se omite se pone como título el nombre de la aplicación. En el argumento botones se especifica una expresión numérica que indica el número y el tipo de botones que serán visualizados, el icono mostrado que acompañará al mensaje, el botón que se asumirá por defecto y la modalidad o no modalidad del cuadro de diálogo. La Tabla 18 muestra los posibles valores de este argumento.
Los valores pueden agruparse en varias categorías, dependiendo del tipo de especificación que indican. Así para indicar el número y el tipo de botones se utilizan los valores de 0 a 5. Para indicar el icono mostrado se utilizan los valores 16, 32, 48 y 64. Para indicar el botón que se asume por defecto se utilizan los valores 0, 256 y 512. Y, por último, para indicar la modalidad o no modalidad del cuadro de diálogo se utilizan los valores 0 y 4096.
La especificación de un tipo concreto de cuadro de diálogo puede realizarse mediante la combinación de un valor de cada uno de los cuatro grupos. Para ello, los valores involucrados deben ser sumados. Ejemplo:
Mensaje = "¿Desea eliminar el archivo seleccionado?"
Botones = vbYesNo + vbQuestion
Titulo = "ELIMINAR"
Respuesta = MsgBox (Mensaje, Botones, Titulo)
Cuando el usuario pulsa uno de los botones del cuadro de diálogo, éste se cierra y la función devuelve un valor numérico que indica el botón que ha sido pulsado. El valor devuelto dependerá de la combinación de botones que han sido mostrados en el cuadro de diálogo. La Tabla 19 muestra los valores posibles devueltos por la función, y las constantes intrínsecas que los representan. Ejemplo:
If MsgBox ("¿Abandonar la aplicación?", vbYesNo, "Salir") = vbYes Then
Unload Me
End if
CUADROS DE DIÁLOGO PERSONALIZADOS
Son cuadros diseñados especialmente para un propósito en particular. Se crean a partir de un nuevo Formulario, que también debe ser incluido en el proyecto. En el Formulario se incluirán controles para visualizar la información deseada (Imagenes, Etiquetas, etc), y para que el usuario suministre la información que la aplicación necesita (Cuadros de Texto, Botones de Comando, etc). Tienen una serie de características comunes:
No suelen presentar barras de menú, barras de desplazamiento, ni botones Maximizar y Minimizar.
Generalmente, no es necesario alterar su tamaño, por lo que sus bordes suelen ser fijos.
Suelen presentar un botón Aceptar y otro Cancelar, que permiten confirmar o rechazar la información suministrada por el usuario.