ALGORITMO Y ESTRUCTURA DE DATOS II

 

TDE ES EI CB Formulario CF EM Ejemplo Salir

Constantes y Funciones

 

Constantes

A continuación se detalla una lista con las constantes más usadas definidas en Visual Basic y su significado:

vbBlack                                  color negro

vbBlue                                    color azul

vbCyan                                   color azul celeste

vbGreen                                 color verde

vbMagenta                            color violeta

vbRed                                     color rojo

vbWhite                                  color blanco

vbYellow                                 color amarillo

 

vbYes                                     Si

vbNo                                       No

 

vbCrLf                                    Introduce un retorno de carro y un avance de línea. De esta forma podemos hacer que se comience a escribir en una nueva línea.

 

Las siguientes constantes se utilizan en los MsgBox para indicar la señal y los botones que se mostrarán:

vbCritical                               señal de error

vbExclamation                       señal de advertencia

vbInformation                        señal de información

vbQuestion                             señal de interrogación

vbOkOnly                              botón de aceptar

vbOkCancel                           botones aceptar y cancelar

vbYesNo                                botones Sí y No

vbYesNoCancel                     botones Sí, No y Cancelar

vbAbortRetryIgnore             botones Anular, Reintentar y Omitir

 

Para determinar que carácter se ha pulsado en el teclado podemos comprobar su código ASCII. Visual Basic nos facilita esta labor mediante estas constantes:

vbKeyUp                                flecha arriba

vbKeyDown                           flecha abajo

vbKeyLeft                              flecha izquierda

vbKeyRight                           flecha derecha

vbKeyReturn                         tecla Intro

vbKeyEscape                         tecla Escape

vbKeySpace                           tecla espacio

vbLeftButton                         botón izquierdo del ratón

vbRightButton                       botón derecho del ratón

Evidentemente hay muchas más, aunque no las expondremos aquí. Los cuatro primeros casos propuestos nos servirán para, por ejemplo, mover un objeto por la pantalla con la ayuda de las teclas de desplazamiento, como sucede en un juego.

 

 

Funciones

Una función nos servirá para realizar un cálculo u obtener un determinado valor. Entre las múltiples existentes podemos destacar las siguientes, agrupadas en categorías.

Funciones matemáticas

Abs(número)                                    Devuelve el valor absoluto de número

Sgn(número)                                    Indica el signo de número

Int(número)                                      Devuelve la parte entera de número

Sqr(número)                                     Halla la raíz cuadrada de número

Round(número, numdecimales)         Redondea número con las posiciones decimales indicadas

Sin(ángulo)                                       Seno de ángulo

Cos(ángulo)                                      Coseno de ángulo

Tan(ángulo)                                      Tangente de ángulo

 

Funciones aleatorias

Rnd                                         Devuelve un número aleatorio entre 0 y 1

Randomize                             Inicializa el generador aleatorio

 

Funciones de cadenas de caractéres

Left(cadena, num)                   Extrae num caracteres de cadena contando de izquierda a derecha

Right(cadena, num)                 Extrae num caracteres de cadena contando de derecha a izquierda

Mid(cadena, pos,  num)           Extrae num caracteres de cadena a partir de la posición pos

Len(cadena)                            Devuelve la longitud de la cadena

LCase(cadena)                       Convierte la cadena a minúsculas

UCase(cadena)                       Convierte la cadena a mayúsculas

 

Funciones de fechas

Date                                       Devuelve la fecha actual

Time                                       Devuelve la hora actual

Now                                        Devuelve la fecha y hora actuales

Day(Date)                              Devuelve el día del mes

WeekDay(Date)                    Devuelve el día de la semana en que nos encontramos, como número y teniendo en cuenta que el 1 es el Domingo, 2 lunes, ...

Month(Date)                          Devuelve el mes en que estamos, como número

Year(Date)                             Devuelve el año

MonthName(num)                  Devuelve el nombre del mes que representa num.

WeekdayName(num)             Devuelve el día de la semana que representa num. Recordar que el 1 es el domingo, 2 lunes, ...

Hour(Time)                            Devuelve la hora

Minute(Time)                        Devuelve los minutos

Second(Time)                         Devuelve los segundos

 

Funciones de comprobación

IsNumeric(dato)                     Comprueba si un dato es numérico

IsDate(dato)                           Comprueba si un dato es de tipo fecha u hora

 

Otras funciones

Asc(carácter)                           Devuelve el código ASCII del carácter indicado

Chr(códigoASCII)                  Devuelve el carácter correspondiente al código ASCII indicado

Beep                                       Emite un pitido

Print                                        Imprime en pantalla el resultado de la expresión o valor que aparece a su derecha. Por defecto, la impresión tendrá lugar en el formulario. Si deseamos imprimir por ejemplo dentro de un PictureBox, tendremos que anteponer el nombre de éste antes de la instrucción Print, separados por un punto.

                                                Si queremos escribir varios datos en una misma línea, podemos utilizar los siguientes separadores entre unos y otros:

                                               

Separador

Resultado

, (coma)

los datos quedan separados por un tabulador

; (punto y coma)

los datos quedan separados por un único espacio en blanco

& (andpersand)

los datos se escriben unos junto a otros, sin separación

Ejemplos

Resultado en pantalla

Print 22, “hola”

22         hola

Print 22; “hola”

22 hola

Print 22 & “hola”

22hola

 

 

 

 

 Las funciones InputBox y MsgBox

 

La función InputBox se utilizará cuando queramos que el usuario introduzca algún dato. Esta función presenta la siguiente sintaxis:

 

                            variable = InputBox (“mensaje”, [“titulo”], [“valor por defecto”])

 

donde variable es una variable de tipo String en la que se almacenará el dato introducido por el usuario, y mensaje es el mensaje que se mostrará en la ventana de entrada de datos. Los valores que aparecen entre corchetes es porque su inclusión en la función InputBox es opcional, por lo que pueden omitirse. Título representa el texto que aparecerá como cabecera en la ventana, y Valor por defecto es el valor que tomará la variable si el usuario no introduce ningún valor en la casilla correspondiente.

 

      El siguiente ejemplo

                            nombre = InputBox (“escriba su nombre”,”AVISO”)

 

mostraría la ventana de entrada de datos de la figura, y almacenaría el valor introducido por el usuario en la variable nombre (que debe ser de tipo String).

 

 

 

  

La función MsgBox permite mostrar un mensaje. La sintaxis de esta función es como en el siguiente ejemplo:

 

MsgBox “No se puede calcular el factorial de un número negativo”, _ vbCritical + vbOKOnly, “Error”

 

El resultado del ejemplo anterior sería una ventana como la que aparece a continuación. Como puede verse la función MsgBox lleva tres argumentos separados por comas; el primero de ellos es el cuerpo del mensaje, en el segundo se hace referencia tanto al dibujo que se mostrará como al botón o botones que aparecerán y en el último se indica el título de la ventana en la que aparece el mensaje.

 

La función MsgBox nos permite conocer que botón ha pulsado el usuario como respuesta al mensaje. Por ejemplo, una función MsgBox en la que aparecieran un botón SI junto a un botón NO (vbYesNo), tendría el valor vbYes si pulsamos el botón SI o el valor vbNo si el botón pulsado es NO. Veámoslo más claramente en el siguiente ejemplo

 

If MsgBox ("¿Realmente desea salir?", vbYesNo + vbExclamation, _ "ATENCION") = vbYes Then End

 

Esta línea de código hace que aparezca una ventana preguntándonos si deseamos salir del programa, en la que aparecerán los botones <Si> o <No>. Si pulsamos el botón <Si>, el programa finalizará (comando End).

 

Nota importante: conviene resaltar aquí que cuando una sentencia de Visual Basic es demasiado larga y no cabe en una línea, antes de comenzar a escribir la continuación de dicha sentencia en la línea inferior es necesario escribir el carácter de subrayado ( _ ) al finalizar la línea anterior como puede observarse en el último ejemplo.

 

Las distintas combinaciones de dibujos y botones que pueden mostrarse en un MsgBox como vimos anteriormente y los repetiremos aquí:

vbCritical                               señal de error

vbExclamation                       señal de advertencia

vbInformation                        señal de información

vbQuestion                             señal de interrogación

vbOkOnly                              botón de aceptar

vbOkCancel                           botones aceptar y cancelar

vbYesNo                                botones Sí y No

vbYesNoCancel                     botones Sí, No y Cancelar

vbAbortRetryIgnore             botones Anular, Reintentar y Omitir

 

Volver