Está en la página 1de 3

CAPITULO 8: Uso avanzado de MSGBOX ()

Hemos visto el uso genrico de MSGBOX. En realidad esta es una funcin del lenguaje aunque, por su particular relevancia le vamos a dedicar un captulo aparte. Esta funcin tiene muchas mas posibilidades de las que hemos visto hasta ahora. De hecho sirve para mostrar distintos tipos de cuadros de confirmacin, mensajes o preguntas al usuario. Algunos de esos cuadros tienen varias posibles actuaciones por parte del usuario y son capaces de identificar cual ha sido la respuesta elegida y actuar en consecuencia. Como particularidad debemos resear que MSGBOX, en todos los usos que se le den, es una funcin, ya que devuelve un resultado. Si nos acordamos, existe una modalidad, la mas simple, que se llamaba como una funcin:

MSGBOX ("Esto es un resultado")


Esta instruccin no produce mas que un cuadro de mensaje en pantalla y queda esperando a que el usuario pulse el botn Aceptar. Como ves tiene algo de excepcional. Es una funcin y no devuelve ningn resultado. Ahora Veamos una lnea un tanto especial:

CALL MSGBOX ("Mensaje", VBOKONLY, "Ttulo")


Fjate que se est usando la funcin llamndola como si fuera un procedimiento. Esta lnea produce un resultado idntico a la anterior.

Ahora vamos a usar la funcin en toda su plenitud. Supongamos la siguiente lnea de cdigo:

confirmacion = MSGBOX ("Mensaje", VBOKCANCEL, "Ttulo")


Esto generar el siguiente cuadro:

A continuacin esperar a que el usuario pulse uno de los dos botones. Y qu se guardar en la variable confirmacion? Pues un nmero que ser distinto segn el botn que haya pulsado el usuario. Si pulsa en Aceptar se guardar un 1. Si pulsa en cancelar se guardar un 2. De esta forma, podremos usar, por ejemplo, un condicional para que nuestro programa ejecute una operacin u otra, segn la decisin del usuario. Veamos mas posibilidades. Al final de este captulo tienes una lista completa de los posibles botones que se muestran a continuacin y los valores numricos que generan para su posterior identificacin.

resultado = MSGBOX ("Mensaje", VBYESNOCANCEL, "Titulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBABORTRETRYIGNORE, "Ttulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBYESNO, "Ttulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBRETRYCANCEL, "Ttulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBCRITICAL, "Ttulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBQUESTION, "Ttulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBEXCLAMATION, "Titulo")


Genera el siguiente cuadro:

resultado = MSGBOX ("Mensaje", VBINFORMATION, "Ttulo")


Genera el siguiente cuadro:

Los diferentes valores que recibira la variable resultado, segn el botn que pulse en cada caso el usuario, son:

Botn Aceptar Cancelar Anular Reintentar Ignorar S No

Valor 1 2 3 4 5 6 7