Académique Documents
Professionnel Documents
Culture Documents
FUNDAMENTOS
Microsoft Visual Basic es un conjunto de herramientas que posibilitan el desarrollo de aplicaciones para Windows de
una manera rpida y sencilla, basado en el lenguaje BASIC y en la programacin orientada a objetos. La palabra Visual
hace referencia al mtodo que se utiliza para crear la interfaz grfica de usuario. En lugar de escribir numerosas lneas de
cdigo para implementar la interfaz, simplemente se utiliza el ratn para agregar objetos prefabricados en el lugar deseado
dentro de la pantalla. La palabra Basic hace referencia al lenguaje BASIC (Beginners All-Purpose Symbolic Instruction
Code), un lenguaje utilizado por ms programadores que ningn otro lenguaje en la historia de la informtica. Visual Basic
ha evolucionado a partir del lenguaje BASIC original y ahora contiene centenares de instrucciones, funciones y palabras
clave, muchas de las cuales estn directamente relacionadas con la interfaz grfica de Windows.
Visual Basic se basa en la programacin orientada a objetos (POO), la cual es una forma de programacin que utiliza
objetos (similares a los objetos del mundo real) para la solucin de problemas. La POO permite descomponer un problema
en bloques relacionados. Cada bloque pasa a ser un objeto autocontenido que contiene sus propios datos e instrucciones.
De esta manera, la complejidad se reduce y se pueden realizar programas ms largos de una manera sencilla.
Objetos
Propiedades
Mtodos
Eventos
Mensajes
Clases
1
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Objetos
Un objeto es una entidad que tiene atributos particulares (propiedades) y unas formas de operar sobre ellos (mtodos). Por
tanto, un objeto contiene variables que especifican su estado y operaciones que definen su comportamiento. Son ejemplos
de objetos: formularios, botones de comando, cuadros de texto, etiquetas, etc.
Propiedades
El conjunto de datos que describen las caractersticas de un objeto se le conoce como sus propiedades. Para un formulario
tenemos por ejemplo, las propiedades BackColor (color de fondo), Height (altura). Algunas propiedades pueden determinar
el comportamiento de un objeto; por ejemplo, la propiedad MaxButton establece si el formulario tendr o no el botn
Maximizar. Hay propiedades particulares, como Caption que la poseen los botones de comando por ejemplo, y genricas
como Name que la poseen todos los objetos.
Mtodos
Los mtodos son un conjunto de procedimientos que permiten que un objeto ejecute una accin o tarea sobre s mismo. Se
ejecutan como respuesta a un evento, por ejemplo al dar click en un botn de comando. Tambin pueden ser invocados
explcitamente en el programa. Por ejemplo, para un formulario tenemos el mtodo Hide que har que el formulario se
oculte; o el mtodo Show que har que el formulario se vuelva a mostrar.
Eventos
Un evento es la capacidad de un objeto de reaccionar cuando ocurre una determinada accin (accin y reaccin). Como
respuesta a un evento se enva un mensaje y se ejecuta un determinado mtodo (procedimiento). Un evento ocurre (se
dispara) como resultado de la interaccin del usuario con el objeto. Tambin puede dispararse debido a la ejecucin de
cdigo (sentencias) o como resultado de la interaccin de otro objeto con el objeto de poseedor del evento. Para un
formulario tenemos por ejemplo; el evento Load que se dispara cuando se carga el formulario; o el evento Click para un
botn de comando, se dispara cuando se hace clic sobre l.
Mensajes
Un mensaje es una llamada a un mtodo (procedimiento), de tal forma que cuando un objeto recibe un mensaje la
respuesta a ese mensaje es ejecutar el procedimiento asociado. Cuando se ejecuta un programa orientado a objetos, los
objetos estn constantemente recibiendo, interpretando y respondiendo a mensajes de otros objetos.
Clases
Una clase es una descripcin para producir objetos de esa clase o tipo. Es decir se trata de una generalizacin de un tipo
especfico de objetos. En otras palabras, un objeto es una variable del tipo definido por una clase. Por ejemplo, piense en un
molde para hacer pasteles, el molde es la clase y los pasteles los objetos.
CARACTERSTICAS DE LA POO
Las caractersticas fundamentales de la programacin orientada a objetos son:
Abstraccin
Encapsulamiento
Herencia
Polimorfismo
Abstraccin
La abstraccin permite no detenernos en los detalles concretos del funcionamiento de las cosas, sino centrarnos en los
aspectos que realmente nos importan y nos son tiles en un determinado momento, en cierta medida, se podra decir que
es sese el objeto y olvdese de cmo funciona en forma interna. Por ejemplo, para manejar una computadora no
necesitamos saber cmo funcionan sus circuitos electrnicos, en trminos de corriente, tensin, etc.
2
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Encapsulamiento
Esta caracterstica permite ver un objeto como una caja negra autocontenida en la que se ha metido de alguna manera
toda la informacin que maneja dicho objeto. Esto permite manipular los objetos como unidades bsicas, permaneciendo
oculta su estructura interna.
Herencia
La herencia es la caracterstica que permite compartir automticamente propiedades y mtodos entre objetos. Es decir, se
pueden crear nuevas clases de objetos en base a clases existentes. Ms concreto, un objeto puede heredar un conjunto
general de propiedades y mtodos a las que puede aadir aquellas caractersticas que son especficas suyas. El usuario de
Visual Basic no dispone de esta caracterstica.
Polimorfismo
Polimorfismo, del griego cuyo significado es muchas formas, es la caracterstica que permite implementar mltiples
formas de un mismo mtodo, dependiendo cada una de ellas de la clase sobre la que se realiza la implementacin. Esto
hace posible que se puede acceder a una variedad de mtodos distintos (todos con el mismo nombre) utilizando
exactamente el mismo medio de acceso.
Los controles son un medio grfico que permiten a los usuarios interactuar con la aplicacin para la manipulacin de
datos y ejecucin de tareas. Son ejemplo de controles: etiquetas, cuadros de texto, botones de comando, casillas de
Verificacin, botones de opcin, cuadros de lista, cuadros combinados, etc.
Los contenedores son objetos que pueden incluir otros objetos y permiten el acceso a los objetos que contienen. Entre
los ms utilizados tenemos a los formularios, marcos y cuadrculas. El formulario ms los controles constituyen la
interfaz de la aplicacin.
REFERENCIANDO OBJETOS
La sintaxis para referenciar objetos es la siguiente:
OBJETO.PROPIEDAD = VALOR
Por ejemplo, para establecer el ttulo de un formulario a Visual Basic es fcil, la orden sera:
Form1.Caption = Visual Basic es fcil
LOS EVENTOS
Cada objeto responde a un conjunto de eventos. Como respuesta a un evento se ejecuta un determinado
procedimiento. Los procedimientos asociados a un evento presentan la forma:
3
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
4
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
6. Ventana de Propiedades (Property Window): Muestra las propiedades del objeto, control o componente
seleccionado. Se puede organizar por orden alfabtico o por categoras.
7. Ventana Explorador de Soluciones (Solution Explorer Window): Presenta organizada la "Solucin" que se compone de
uno o ms "Proyectos", cada uno de stos tiene "Referencias" y "Archivos" que lo componen, por ejemplo si el
lenguaje usado es Visual Basic .NET todos los archivos tendrn extensin VB, si es C# la extensin ser CS, etc.
8. Diseador de Componentes (Components Designer): Se ubica en la parte inferior del diseador de formularios y
contiene los componentes de la aplicacin que no se ven en tiempo de ejecucin.
9. Barra de Estado (Status Bar): Presenta informacin del modo de trabajo, ubicacin en el editor (linea, columna,
caractr), estado de las teclas, etc.
5
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Formularios
Una vez creado el proyecto, se aade un formulario al mismo, apareciendo una nueva pestaa en el rea principal del
IDE, que corresponde al diseador del formulario. Ver Figura 40. Dentro de una aplicacin VB.NET, el trmino formulario
designa a una ventana estndar de las que utilizamos habitualmente en Windows para comunicarnos con el usuario,
mientras que el diseador del formulario representa a la plantilla de una ventana, sobre la cul aadiremos controles y
modificaremos si es necesario su aspecto inicial.
El formulario como un objeto Un formulario es, al igual que la gran mayora de elementos en el entorno de .NET, un
objeto, y como tal, la forma de manipularlo pasa por asignar y obtener valores de sus propiedades, y por la ejecucin de sus
mtodos.
Debido a que un formulario dispone de un elevado nmero de propiedades y mtodos, durante el texto nos
centraremos slo sobre los que vayamos a trabajar, pudiendo el lector, consultar el resto a travs de la ayuda de VS.NET;
esto es aplicable a todos los objetos con los que tratemos.
Debido a que un formulario dispone de un elevado nmero de propiedades y mtodos, durante el texto nos centraremos
slo sobre los que vayamos a trabajar,
6
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
IDENTIFICADORES
Los identificadores son nombres dados a los elementos de una aplicacin, tales como constantes, variables,
procedimientos, funciones, objetos, etc. Un identificador es una secuencia de caracteres que puede ser de hasta 255
caracteres. Para la construccin de identificadores debemos tener presente las siguientes reglas:
CONSTANTES
Una constante almacena un dato cuyo valor no cambia durante la ejecucin de un programa. Para declarar una
constante utilice la siguiente sintaxis:
Const NOMBRE_CONSTANTE [As TIPO] = VALOR
Si no se declara el tipo de constante (utilizando As TIPO) se asigna a la constante el tipo de dato ms apropiado a su
valor. El valor de una constante puede ser numrico, alfanumrico, carcter o de tipo fecha y hora.
Por ejemplo:
Const MAXIT = 25
Const PI As Double = 3.141592
Const CADENA As String = Visual Basic es fcil
Const FECHA_POR_DEFECTO = #01/01/99#
VARIABLES
Una variable almacena un dato cuyo valor puede cambiar durante la ejecucin de un programa. La declaracin de las
variables en Visual Basic 2010 se hace por medio de la instruccin Dim seguida del nombre de la variable y del tipo de datos
que esta contendr.
Con una misma instruccin Dim tambin podemos declarar en una misma lnea ms de una variable. En este caso, las
tres variables las estamos definiendo del mismo tipo, que es el indicado al final de la declaracin.
Dim a, b, c, As Integer
7
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
TIPOS DE DATOS
Los datos con los que trabajaremos probablemente incluyan informacin relacionada con nmeros, dinero, nombres,
descripciones, fechas, etc. Cada dato corresponde a un determinado tipo, es decir, pertenece a una categora de datos que
se manipulan de maneras similares. Los tipos de datos que maneja Visual Basic son:
SENTENCIAS
Una sentencia es una lnea de cdigo que indica una o ms operaciones a realizar. Una lnea puede incluir varias
sentencias, separadas unas de otras por dos puntos. Por ejemplo:
Una sentencia Visual Basic puede escribirse en ms de una lnea fsica utilizando el carcter de continuacin de lnea (un
espacio en blanco seguido del carcter de subrayado). Por ejemplo:
8
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
OPERADORES
Los operadores son smbolos que indican cmo sern manipulados los operandos. Los operandos son los datos (constantes
y/o variables) sobre los que acta los operadores para producir un determinado resultado.
OPERADORES ARITMTICOS
OPERADOR SIGNIFICADO
^ Exponenciacin
- Menos unario
* / Multiplicacin y divisin
\ Divisin entera
Mod Resto de una divisin entera
+ - Suma y resta
OPERADOR SIGNIFICADO
Not Negacin
And Conjuncin
Or Disyuncin inclusiva
OPERADOR SIGNIFICADO
& Concatenacin
Like Compara dos cadenas de caracteres
CONCATENACIN DE CADENAS
El operador de concatenacin de cadenas (+) concatena valores de cadena. EL resto de las operaciones con cadenas se
control mediante las funciones de cadena.
9
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
USO DE EVENTOS
Un evento es una accin que es reconocida por el objeto. Un evento ocurre (se dispara) como resultado de la interaccin
del usuario con el objeto. Tambin puede dispararse debido a la ejecucin de cdigo (sentencias) o como resultado de la
interaccin de otro objeto con el objeto de poseedor del evento. Para un formulario tenemos por ejemplo; el evento Load
que se dispara cuando se carga el formulario; o el evento Click para un botn de comando, se dispara cuando se hace clic
sobre l. Algunos de los principales eventos son los siguientes:
Evento Descripcin
Click Ocurre cuando el usuario presiona y suelta un botn del mouse sobre un objeto.
DblClick Ocurre cuando el usuario presiona y suelta dos veces un botn del mouse sobre un objeto.
DragDrop Ocurre como resultado de arrastrar y soltar con el mouse un control sobre un determinado objeto.
GotFocus Ocurre cuando un objeto recibe el control, ya sea mediante una accin del usuario, como tabular o
hacer clic en el objeto.
LostFocus Este evento ocurre cuando el objeto pierde el enfoque, ya sea mediante tabulaciones o hacer clic sobre
otro objeto.
KeyDown Ocurre cuando el usuario mantiene presionada una tecla.
KeyUp Ocurre cuando el usuario termina la operacin de pulsar una tecla. Se podra decir que este evento
ocurre al terminar el evento KeyDown.
KeyPress Ocurre como resultado de presionar y soltar una tecla.
MouseDown Ocurre cuando el usuario presiona un botn del mouse, pero a diferencia del evento KeyDown, permite
identificar cules de los tres botones del mouse fue presionado y las combinaciones de las teclas ALT,
MAYS y CTRL.
MouseUp Este evento se produce cuando el usuario suelta el botn del mouse. MouseUp es un compaero til de
los eventos MouseDown y MouseMove.
MouseMove Este evento ocurre mientras el usuario mueve o desplaza el puntero del mouse sobre un objeto.
Load Se produce al cargarse un objeto en memoria.
Otra posibilidad de proporcionar datos o de visualizarlos durante la ejecucin de una aplicacin es utilizando cajas de
dilogos predefinidas. Debido a que esta es la forma ms simple de realizar la E/S de datos nos ocuparemos de ella.
10
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
La funcin MsgBox() muestra un cuadro de dilogo predefinido y retorna un valor de tipo entero dependiendo del
botn seleccionado por el usuario. Su sintaxis es de la siguiente forma:
Donde
MENSAJE se refiere a una expresin de cadena que se muestra como mensaje en el cuadro de dilogo.
BOTN es una expresin numrica que se refiere al tipo y cantidad de botones a utilizar.
ICONO es una expresin numrica que se refiere al estilo de icono que se va ha utilizar.
TTULO es una texto que se mostrar en la barra de ttulo de la caja de dilogo.
Tipo de botn
Valor Botn Nombre
0 Muestra solo el botn de Aceptar vbOKOnly
1 Muestra los botones Aceptar y Cancelar vbOKCancel
2 Muestra los botones Anular, Reintentar, Ignorar vbAbortRetryIgnore
3 Muestra los botones S, No y Cancelar vbYesNoCancel
4 Muestra los botones S y No vbYesNo
5 Muestra los botones Reintentar y Cancelar vbRetryCancel
Tipo de icono
Valor Icono Nombre
16 Mensaje crtico vbCritical
32 Signo de interrogacin vbQuestion
48 Signo de exclamacin vbExclamation
64 Signo de informacin vbInformation
Valores retornados
Valor Botn Nombre
1 Aceptar vbOK
2 Cancelar vbCancel
3 Anular vbAbort
4 Reintentar vbRetry
5 Ignorar vbIgnore
6 S vbYes
7 No vbNo
Como ejemplo vamos a construir un formulario que presente un botn Salir, de tal forma que cuando el usuario
pulse dicho botn se presente el siguiente mensaje:
11
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
En caso de que el usuario elija la opcin S, la aplicacin debe terminar. En caso contrario, es decir si el usuario elige
la opcin No, se debe proseguir con la aplicacin.
Para el desarrollo del presente ejemplo, proceda a ubicar sobre el formulario un botn de comando (CmdSalir), a
continuacin ingresar el siguiente cdigo:
En Visual Basic una forma de ingresar datos a la aplicacin es utilizando la caja de dilogo predefinida provista por la
funcin InputBox. La funcin InputBox muestra una caja de dilogo en la que el usuario puede introducir un valor, que ser
devuelto al aceptar dicha caja.
Su sintaxis es la siguiente:
Dnde:
MENSAJE es una cadena de caracteres con el texto que va a mostrar la caja de dilogo. El mensaje indica al usuario
el tipo de informacin que debe ingresar. Por ejemplo, las sentencias:
Da lugar a que Visual Basic presente una caja de dilogo solicitando la informacin requerida.
TTULO es el texto que se muestra en la barra de ttulo de la caja de dilogo, si se omite TTULO, el nombre de la
aplicacin es la que se muestra en la barra de ttulo.
RESPUESTADEFECTO es una expresin de cadena que aparece en el cuadro de texto como respuesta
predeterminada en caso de que el usuario no escriba nada. . Si se omite RESPUESTADEFECTO el cuadro de texto se
muestra vaco.
XPOSICION, YPOSICION Son valores numricos que indican las coordenadas en donde ser mostrada la caja. Si se
omiten, se mostrar en el centro de la pantalla.
12
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Completando el procedimiento Llegados a este punto del ejemplo, tenemos todos los ingredientes para completarlo.
Necesitamos que el usuario introduzca su nombre utilizando InputBox( ), volcar dicho nombre en la variable que hemos
declarado y mostrarlo usando otro MessageBox.
Sub Main()
MessageBox.Show("Empieza el programa")
Dim Nombre As String
Nombre = InputBox("Escribe tu nombre")
MessageBox.Show("El nombre del usuario es: " & Nombre, "Programa de prueba")
End Sub
Describamos los ltimos pasos que hemos dado: Despus de la declaracin de la variable Nombre, llamamos a la
funcin InputBox( ). Como dicha funcin devuelve una cadena de caracteres con el valor que haya escrito el usuario,
necesitamos recuperarla de alguna forma, y esta es asignando el resultado de la llamada a la funcin en la variable.
Despus de escribir su nombre en el campo de la caja, si el usuario pulsa OK, InputBox( ) devolver el valor de dicho
campo a la variable Nombre. Por ltimo, mostraremos el valor de la variable usando el mtodo Show( ) de MessageBox,
pero con algunas variaciones respecto a la primera vez que utilizamos esta clase en Main( ). En este caso concatenamos una
cadena de caracteres al nombre, para ello debemos utilizar el operador &, y empleamos un segundo parmetro, que
muestra un ttulo en la ventana del mensaje.
Comentarios de cdigo
Para introducir un comentario aclaratorio en el cdigo de un programa utilizaremos la comilla simple ( ), seguida del texto
correspondiente al comentario. Podemos insertar comentarios desde el comienzo de lnea o a continuacin de cdigo
ejecutable. Ver Cdigo fuente 16.
Sub Prueba() ' este es un comentario desde el principio de lnea Dim Valor As Integer
Valor = 158 ' este es un comentario junto a una lnea de cdigo
End Sub
13
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Controles bsicos
Controles complementarios
Controles externos
Los controles bsicos son las etiquetas, cuadros de texto y botones de comando, pues utilizando estos tres controles
se puede construir cualquier interfaz.
Los controles complementarios son el resto de los controles, por ejemplo una casilla de verificacin, un cuadro
combinado o un cronmetro.
Los controles externos se refieren a aquellos controles creados por terceros. Este tipo de controles son llamados
ActiveX.
CONTROLES BSICOS
Los controles bsicos lo conforman las etiquetas, cuadros de texto y botones de comando, debido a que cualquier interfaz
se puede implementar con slo estos tres objetos.
Etiqueta
Una etiqueta es un control que permite presentar texto de solo lectura. Se utiliza para mostrar ttulos y mensajes que
por lo general no cambian. Sin embargo, si lo desea, puede escribir procedimientos que cambien el texto mostrado por una
etiqueta como respuesta a eventos en tiempo de ejecucin.
14
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Cuadro de texto
Un cuadro de texto es un control en el que el usuario pueda ingresar datos desde el teclado o visualizar un resultado
generado por la aplicacin. El valor de un cuadro de texto por lo general se asocia a una variable de memoria.
Evento Descripcin
Change Ocurre cuando se cambia el contenido del control utilizando el teclado o el ratn.
KeyPress Ocurre cuando se pulsa una tecla.
15
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Botn de comando
Un botn de comando es un control que suele emplearse para ejecutar una accin, como cerrar un formulario,
imprimir un informe, etc.
Los botones de comando suelen responder al evento Click, cuya descripcin es:
Evento Descripcin
Click Ocurre cuando el usuario hace click sobre el control.
CONTROLES COMPLEMENTARIOS
Los controles complementarios se utilizan como alternativa a los controles bsicos en aplicaciones en las cuales su uso
facilita o mejora el diseo de la interfaz. Como el lector podr verificar, algunos controles son ms adecuados que otros
dependiendo del tipo de aplicacin que se pretenda desarrollar.
Marco
Un marco es un objeto contenedor que puede utilizarse para agrupar casillas de verificacin, botones de opcin, botones de
comando, etc.
Propiedad Descripcin
Caption Muestra un ttulo para el control.
Casilla de verificacin
Una casilla de verificacin se utiliza para alternar entre dos posibles valores (Activado/Desactivado). Cada casilla de
verificacin es independiente de las dems ya que cada una tiene su propio nombre (Name). Puede utilizar casillas de
verificacin en grupos para mostrar mltiples opciones entre las cuales el usuario puede seleccionar todas las que desee a
la vez.
Propiedad Descripcin
Caption Muestra un ttulo para el control.
Value Devuelve o establece el estado del control, puede ser: Desactivado (0),
Activado (1).
Las casillas de verificacin suelen responder al evento Click.
16
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Botn de opcin
Un botn de opcin se utiliza para alternar entre dos posibles valores (Activado/Desactivado), de manera similar a las
casillas de verificacin, la diferencia radica en que de un grupo de botones de opcin el usuario slo puede seleccionar un
nico botn a la vez.
Propiedad Descripcin
Caption Muestra un ttulo para el control.
Value Devuelve o establece el estado del control, puede ser: Desactivado
(Falso), Activado (True).
Cuadro de lista
Un cuadro de lista es un control que presenta una lista de elementos en la que el usuario puede seleccionar uno o
ms de dichos elementos. Si el nmero de elementos supera el nmero que puede mostrarse, se agregar
automticamente una barra de desplazamiento al control.
Propiedad Descripcin
List Contiene los elementos de la lista. Puede definirlos en tiempo de
diseo.
ListCount Especifica el nmero de elementos de la lista. Su valor siempre es uno
ms que el mayor valor de ListIndex.
ListIndex Especifica el nmero de orden que ocupa el elemento seleccionado en
la lista. Toma el valor de 0 para el primer elemento, si no ha selecciona
ninguno retorna -1.
MultiSelect Especifica si se pueden seleccionar varios elementos de la lista.
SelCount Devuelve el nmero de elementos seleccionados.
Selected Especifica si un elemento de la lista est seleccionado.
Sorted Especifica si los elementos de la lista se ordenan alfabticamente.
Text Especifica el valor del elemento seleccionado en ese instante. El valor
es tratado como una cadena de caracteres.
Los mtodos que se pueden utilizar para un cuadro de lista son los siguientes:
Mtodo Descripcin
AddItem Agrega un nuevo elemento a la lista.
Clear Elimina todos los elementos contenidos en la lista.
RemoveItem Elimina en elemento de la lista.
17
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Cuadro combinado
Un cuadro combinado es una mezcla de un cuadro de texto con una lista. En l no slo se podr ingresar un dato sino
tambin seleccionarlo de la lista. Presenta las mismas propiedades, eventos y mtodos que el cuadro de lista a excepcin de
lo siguiente:
Propiedad Descripcin
Style Especifica si el control se comporta como un cuadro de texto o como
una lista desplegable. Un cuadro de texto permite ingresar valores. Una
lista desplegable slo permite seleccionar valores. El valor
predeterminado es 0-vbComboDropDown, e incluye una lista
desplegable y un cuadro de texto. El valor 1-vbComboSimple incluye
tan solo cuadro de texto. El valor 2-Dropdown List incluye slo una lista
desplegable.
Cronmetro
Un cronmetro sirve para controlar el tiempo transcurrido desde el inicio de una accin.
Propiedad Descripcin
Interval Especifica el nmero de milisegundos que se esperar para disparar el
evento Timer
Evento Descripcin
Timer Ocurre cuando el nmero de milisegundos especificado en la propiedad
Interval ha transcurrido.
Cuadro de imagen
Un cuadro de imagen se utiliza para mostrar un archivo de imagen (BMP, GIF o JPG). Recorta el grfico si el control no
es lo bastante grande para mostrar la imagen completa.
Propiedad Descripcin
AutoSize Especifica si el control ajusta automticamente su tamao para mostrar
un grfico completo.
Picture Especifica el archivo de imagen para el control.
El evento que suele manejarse para este control es MouseMove, cuya descripcin es:
Evento Descripcin
MouseMove Ocurre cuando el usuario mueve el ratn sobre el control.
18
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Imagen
Un control imagen se utilizar para mostrar un archivo de imagen (BMP, GIF o JPG) de manera similar a un Cuadro de
imagen. Sin embargo, este control utiliza menos recursos del sistema y se actualiza con ms rapidez que un cuadro de
imagen.
Propiedad Descripcin
Picture Especifica el archivo de imagen para el control.
Stretch Especifica cmo se ajusta el tamao del archivo grfico para que quepa
dentro del control imagen.
La posicin ms a la izquierda se corresponde con el valor mnimo, la posicin ms a la derecha con el valor mximo,
y cualquier otra posicin es un valor entre ellos dos.
Propiedad Descripcin
Max Especifica el valor mximo que puede tomar la propiedad Value.
Min Especifica el valor mnimo que puede tomar la propiedad Value.
LargeChange Especifica en cuanto cambiar el valor de la propiedad Value cuando el
usuario haga click antes o despus del cuadrado de desplazamiento.
SmallChange Especifica en cuanto cambiar el valor de la propiedad Value cuando el
usuario haga click en alguna de las flechas de los extremos de la barra.
Value Especifica el valor del control, este se encuentra siempre entre los
valores de las propiedades Min y Max.
Evento Descripcin
Change Ocurre inmediatamente despus que el cuadrado de desplazamiento
ha sido movido.
Scroll Ocurre mientras el cuadrado de desplazamiento est siendo movido
(este evento slo ocurre cuando el cuadrado es arrastrado).
Las propiedades y eventos de las barras de desplazamiento horizontal y vertical son anlogas.
19
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
ESTRUCTURAS DE CONTROL
Las estructuras de control permiten tomar decisiones y realizar un proceso repetidas veces (procesos iterativos). Para
ello Visual Basic dispone de las siguientes estructuras de control: If . . . Then . . . Else, If . . . Then . . . ElseIf, Select Case, For . .
. Next, While . . . . Wend, Do . . . Loop y GoTo.
If CONDICIN Then
SENTENCIAS_VERDADERAS
Else
SENTENCIAS_FALSAS
End If
Por ejemplo, el siguiente cdigo determina si un entero A es o no divisible por otro entero B:
If CONDICIN_1 Then
SENTENCIAS_1
ElseIf CONDICIN_2 Then
SENTENCIAS_2
.
Else
SENTENCIAS_FALSAS
End If
20
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Por ejemplo considere el siguiente cdigo, el cual imprime el nombre del mes correspondiente a los nmeros del 1 al 12.
Dim N As Integer
N = InputBox(Ingrese N?)
If N = 1 Then MsgBox Enero
ElseIf N = 2 Then : MsgBox Febrero
ElseIf N = 3 Then : MsgBox Marzo
ElseIf N = 4 Then : MsgBox Abril
ElseIf N = 5 Then : MsgBox Mayo
En este caso se comprueba el valor de EXPRESIN_TEST frente a la lista expresiones EXPRESIN_1, EXPRESIN_2, . . .
y as sucesivamente, y busca el primer Case que incluya el valor evaluado en EXPRESIN_TEST, ejecutando a continuacin el
bloque de sentencias correspondiente. Si no existe un valor igual a EXPRESIN_TEST, entonces se ejecuta las
SENTENCIAS_FALSAS correspondientes al Case Else.
21
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
A manera de ejemplo vamos a codificar el programa de la seccin anterior el cual imprime el nombre del mes
correspondiente a los nmeros del 1 al 12. Pero en esta vez utilizaremos la estructura Select Case (compare con cual de
ambas estructuras es ms cmodo trabajar).
Dim N As Integer
N = InputBox(Ingrese N?)
Select Case N
Case 1 : MsgBox Enero
Case 2 : MsgBox Febrero
Case 3 : MsgBox Marzo
Case 4 : MsgBox Abril
Case 5 : MsgBox Mayo
Case 6 : MsgBox Junio
Case 7 : MsgBox Julio
Case 8 : MsgBox Agosto
Case 9 : MsgBox Setiembre
Pg. 35
Case 10 : MsgBox Octubre
Case 11 : MsgBox Noviembre
Case 12 : MsgBox Diciembre
Case Else
MsgBox Error de datos
End Select
Cabe destacar que Select Case tambin se puede utilizar de la siguiente manera:
Dim X As Integer
X = InputBox(Ingrese X?)
Select Case X
Case 1
MsgBox X = 1
Case 2, 3
MsgBox X = 2 o X = 3
Case 4 To 10
MsgBox 4 <= X <= 10
Case Else
MsgBox X < 1 o X > 10
End Select
22
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Donde la variable CONTADOR es inicializada con el valor de INICIO y se incrementa o decrementa hasta un valor FINAL.
INCREMENTO/DECREMENTO define la manera en que cambia el valor de la variable CONTADOR en cada iteracin.
La sentencia Exit For permite salir del bucle For . . . Next antes de que este finalice.
Por ejemplo, el siguiente cdigo imprime los cuadrados de los nmeros enteros del 1 al 25.
Dim C As Integer
For C = 1 To 25
Print C
Next
Para que este cdigo funcione correctamente debe establecer la propiedad AutoRedraw del formulario a True.
While CONDICIN
SENTENCIAS_REPETITIVAS
Wend
La estructura While . . . Wend evala la CONDICIN en cada iteracin y si el resultado es verdadero contina su
ejecucin.
A manera de ejemplo, considere el siguiente cdigo, el cual imprime en pantalla la suma de los primeros nmeros
naturales, es decir = 1 + 2 + 3 + 4 + . . . + N S N
23
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Estructura Do . . . Loop
Esta estructura ejecuta un bucle mientras una condicin dada sea cierta, o hasta que una condicin dada sea cierta.
La condicin puede ser verificada antes o despus de ejecutarse el cuerpo del bucle. Su sintaxis es:
Formato 1:
Do [While/Until] CONDICIN
SENTENCIAS_REPETITIVAS
[Exit Do]
Loop
Formato 2:
Do SENTENCIAS_REPETITIVAS
[Exit Do]
Loop [While/Until] CONDICIN
Esta estructura (como se puede observar en ambos formatos) permite realizar varias estructuras diferentes
dependiendo si la condicin de terminacin est al principio o al final del cuerpo del bucle.
Como ejemplo, consideremos el siguiente programa, el cual calcula el factorial de un entero ingresado por teclado: N
24
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
ARREGLOS
Un arreglo o matriz es una estructura de datos en la que se almacena una coleccin finita de datos del mismo tipo,
que comparten un nombre comn, a los que se puede acceder por la posicin (ndice) que ocupa cada uno de ellos dentro
del arreglo. Cada elemento del arreglo es una variable que puede contener un nmero o una cadena de caracteres,
dependiendo del tipo de arreglo que se declare.
Arreglos estticos
Son aquellos arreglos cuyo tamao no puede cambiar en tiempo de ejecucin. La declaracin de un arreglo esttico
se puede realizar mediante la siguiente sintaxis:
Dnde:
DIMENSIONES es una lista de nmeros, separados por comas y que definen las dimensiones del arreglo. Esta lista
puede ser de la siguiente forma:
DIMENSIN_1, DIMENSIN_2, DIMENSIN_3, . . ., DIMENSIN_K
En el primer caso se declara un arreglo unidimensional de 10 elementos de tipo entero (por defecto los elementos de
un arreglo se numeran a partir de 0).
En el segundo caso se define de un arreglo bidimensional de 20 elementos (5 filas por 4 columnas) de tipo punto
flotante en doble precisin.
En el tercer caso se define una arreglo unidimensional de 20 elementos de tipo cadena de caracteres (cada elemento
tiene una longitud fija de 30 caracteres).
Como se observa la numeracin de los elementos de un arreglo por defecto comienza en cero, para hacer que la
numeracin comience en 1, debe ingresar la siguiente orden en la seccin de Declaraciones del mdulo de formulario:
Luego, para declarar los mismos arreglos de los casos anteriores, las sentencias seran las siguientes:
Establecer la sentencia Option Base a 1 o trabajar con el valor predeterminado (cero) queda a consideracin del lector.
25
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Arreglos dinmicos
Son aquellos arreglos en los que su tamao puede definirse o modificarse en tiempo de ejecucin. Para declara un
arreglo dinmico utilice la siguiente sintaxis:
ReDim NOMBRE_ARREGLO(NMERO_ELEMENTOS)
Cada vez que se ejecuta la sentencia ReDim, todos los valores almacenados en el arreglo se pierden. Para definir o cambiar
el tamao del arreglo conservando los valores del mismo use la siguiente sintaxis:
Para liberar el espacio de memoria utilizado por arreglos dinmicos que ya no son tiles, utilizar la sintaxis:
Erase NOMBRE_ARREGLO
La orden Erase asigna cero a cada elemento de los arreglos numricos y nulo () a cada elemento de los arreglos de cadena
de caracteres.
A manera de ejemplo considere el siguiente cdigo que declara y hace uso de un arreglo dinmico:
26
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
REGISTROS
Un registro es un nuevo tipo de dato, que se define como una coleccin de datos de diferentes tipos, conocidos como
campos, los cuales se encuentran evidentemente relacionados.
Un registro slo se puede ser creado en la seccin de declaraciones de un mdulo. La sintaxis correspondiente es:
Dim X As ALUMNO
Para referirse a un determinado miembro del registro se utiliza el operador selector de campos ( . ), veamos:
X.ID_ALUMNO = 980976G X.NOMBRE = Carlos Castillo Peralta X.DIRECCION = Jr. C. Richardson 412 Chorrillos
X.TELEFONO = 2510850 X.ESTADO = True Las mismas rdenes del prrafo anterior se pueden escribir de una manera
ms fcil, ms legible y ms eficiente si utiliza la sentencia With . . . End With, del siguiente modo:
With X
. ID_ALUMNO = 980976G
.NOMBRE = Carlos Castillo Peralta
.DIRECCION = Jr. C. Richardson 412 Chorrillos
.TELEFONO = 2510850
.ESTADO = True
End With
27
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
FUNCIONES
Las funciones son uno de los elementos bsicos en programacin. A continuacin sern estudiadas detalladamente.
Donde LISTA_PARMETROS es una secuencia de variables separadas por comas que se corresponden con los argumentos
pasados cuando es invocada la funcin.
Para especificar el tipo de datos que ser retornado por la funcin utilice la clusula opcional As TIPO, el tipo es Variant por
omisin.
El valor retornado por la funcin es almacenado en su propio nombre, es decir en NOMBRE_FUNCIN, que acta como
variable dentro del cuerpo de la funcin. Si no se efecta esta asignacin el valor devuelto ser cero si la funcin es de tipo
numrica, nulo () si la funcin es de tipo cadena, o vaco (Empty) si la funcin es de tipo Variant.
La clusula opcional Exit Function permite salir de una funcin antes de que la funcin finalice, en caso sea esto necesario.
VARIABLE = NOMBRE_FUNCIN([LISTA_ARGUMENTOS])
Dnde:
LISTA_ARGUMENTOS es una secuencia de constantes, variables o expresiones separadas por comas. El nmero de
argumentos debe ser igual al nmero de parmetros de la funcin. Los tipos de los argumentos deben coincidir con los tipos
de sus correspondientes parmetros.
()232=++fxxx
28
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Por referencia
Por valor
La cabecera de la funcin F especifica que X ser pasado por valor y no por referencia.
29
Apoyo didctico de Visual Basic ISC. Juan Jos Del ngel Garca
Funciones recursivas
Se dice que una funcin es recursiva si se llama a s misma. Por ejemplo la funcin FACTORIAL cuyo cdigo se presenta a
continuacin es recursiva:
PROCEDIMIENTOS
La sintaxis para definir un procedimiento es la siguiente:
La explicacin es anloga a la dada para las funciones. Sin embargo, un procedimiento no puede ser utilizado en una
expresin, ya que un procedimiento no retorna ningn valor a travs de su nombre.
La llamada a un procedimiento puede ser realizada de alguna de las dos formas siguientes:
Call NOMBRE_PROCEDIMIENTO([LISTA_ARGUMENTOS])
NOMBRE_PROCEDIMIENTO([LISTA_ARGUMENTOS])
Por ejemplo, el siguiente cdigo corresponde a un procedimiento que calcula e imprime la suma de los primeros nmeros
naturales impares, es decir: = 1 + 3 + 5 + . . . + N S N
30