Sie sind auf Seite 1von 27

Introducción al Lenguaje

Programación Visual Basic: ¿Por qué objetos y eventos?

La mayoría de aplicaciones Windows, así como otros programas, emplean una


Interfaz Gráfica de Usuario (GUI), consistente en una o más pantallas llenas de objetos,
menús, botones, líneas, cuadros de edición etc, todos inactivos hasta que el usuario
provoca un evento al hacer clic con el ratón sobre un botón, barra de menús, en la
formas, o un comando de tecla o de vos. Una ves que el evento ocurre, el usuario
espera que cada objeto realice su función y se comporte de una manera confiable.

Este requerimiento de confiabilidad y predecibilidad es el que hace que la


programación orientada a objetos y manejada por eventos sea perfecta para el
desarrollo de aplicaciones Windows. Visual Basic proporciona un ambiente de desarrollo
donde el trabajo tales como objetos y eventos llega a ser un proceso directo, y lo más
importante, bien estructurado.

Los Pasos en este proceso son:


 Crear y dar nombre a una nueva forma
 Trazar y dar nombres a los objetos que se desplegarán en la forma.
 Relacionar con los objetos significativos el código que se ejecutará en
respuesta a eventos del usuario o generados por el sistema
Ambiente Visual

Cuando iniciamos Visual Basic, nos mostrará la


siguiente Ventana donde podemos seleccionar, que
es lo que vamos a desarrollar.

En este curso nos centraremos en las primera


opcione Estándar EXE.

Seleccionamos el tipo de proyecto y presionamos


Abrir, si ya tenemos un proyecto seleccionamos la
lengüeta Existente o Reciente para que nos muestre
los proyectos recientes.

Luego le aparacerá el entorno inicial de Visual Basic :

Conceptos Básicos

Eventos: Son las acciones que se producen y que nos interesan identificar para
establecer algún tipo de respuesta por parte del objeto.

Ejemplo de eventos:
- Hacer clic sobre el objeto
- Al Cargar el objeto
- Al Cerrar el objeto

Propiedades: Es un atributo nominal de un objeto de programación. Las propiedades


definen las características del objeto, tales como tamaño, color, longitud, diámetro, o
algunas veces, la manera en la cual se comporta el objeto, por ejemplo si un cuadro de
texto aceptará líneas de texto múltiples o sencillas.

Ejemplo Objeto : gato


Propiedades : gato.color = negro
gato.height = 10

Métodos: Una descripción completa de un objeto, no se limita a sus propiedades,


debe comprender una definición de lo que hace
Ejemplo Metodo : gato.juega
gato.come
gato.duerme
Nombre sus Objetos

Un buen hábito de programación es el de establecer la propiedad Name de los objetos


significativos de su aplicación, aquellos cuyas propiedades y métodos espera usted usar
en el código. Visual Basic asigna automáticamente un nombre a cada objeto:
Command1, Command2, texbox1, texbox2.

Es convencional usar un prefijo de tres letras minúsculas cuando se nombran los objetos
significativos, de esta forma podrá reconocer a que objeto se refiere en el código del
programa por cmdOK o frmPrincipal que utilizando command7 o form3.

Objeto Visual Basic Prefijo Ejemplo


Forma frm frmInicio
Botón de Comando cmd, btn cmdSalir, btnAdicionar
Etiqueta lbl lblOpciones
Cuatro de Texto txt txtCodigo
Barras de desplazamiento hsb, vsb vsbHora, hsbRango
Menu mnu mnuArchivo
Botón de Opción opt optSexo
Cuadro de Verificación chk chkSonido
Cuadro de lista lst lstColores
Marco fra fraMarco
Cuadro de dibujo pic dicDibujo
Imagen img imgLogotipo
Panel pnl pnpPanel
Lineas lin linLinea
Temporizador tmr tmrTiempo
Cuadriculas grd grdDatos

Variables y Constantes

Una variable es una ubicación de almacenamiento temporal con nombre que se


encuentra en memoria. Una variable es capaz de contener un cierto tipo de datos que
pueden modificarse durante la ejecución del programa.

Las variables en VisualBasic, deben limitarse a 255 caracteres, empezar con un


carácter alfabético y no pueden contener un punto. Tampoco se pueden usar nombres
de variables, las palabras reservadas como por ejemplo: Sub, End o Function.
Tipos de Variables

Tipo de Datos Tamaño de Almacenamiento Rango


Byte 1 byte 0 a 255
Boolean 2 bytes True o False
Integer 2 bytes -32768 a 32767
Long (long integer) 4 bytes -2147483648 a 2147483647
Single 4 bytes -3.40E38 a 3.40E38
Double 8 bytes -1.80E308 a 1.80E308
Currency 8 bytes -9.22E14 a 9.22E14
Date 8 byes 1/1/100 a 31/12/9999
Objeto 4 bytes Referencia a cualquier objeto
String 1Caracter/1 byte Aprox 65,500 Bytes Max
Variant Depende del dato Determinado por el tipo
User Define Depende del dato Determinado por el tipo

Declaraciones de variables

Para declarar variables en Visual Basic, lo hacemos con la palabra reservada


Dim(Public, Private o Static) seguida del nombre de la misma y luego el tipo:

Sintaxis:
Dim “nombre” as “tipo de variable”

Ejemplo:
Dim ciudad as string

(DIM) Es la abreviatura de Dimensión, esto reserva espacio en memoria para la variable


cuando se ejecute el programa y permitirá a VB que tipo de datos deberá guardar en
dicha variable.

Declaración Explícita

En Visual Basic no es necesario declarar una variable antes de utilizarla. Sin embargo,
esta forma de trabajar puede ser una fuente de errores.

Ejemplo:
Dim M As Integer, N As Integer
VarTEmp = M + N

N = VaTemp
En este ejemplo, VarTEmp no se ha declarado explícitamente. Esto no supone un Error,
ya que Visual Basic se encarga de crear dicha variable. Ahora observe que, por error, el
nombre de esa variable se ha escrito mal en la última sentencia. Cando Visual Basic
encuentra un nuevo nombre no puede determinar si es debido a un error o a la
definición de una nueva variable.

Para evitar este tipo de errores, podemos indicar a Visual Basic que genere un mensaje
de error siempre que encuentre una variable no declarada explícitamente. Para ello,
escribiremos la sentencia siguiente en la sección de Declaraciones del formulario, del
módulo o de la clase:

Option Explicit

Esta sentencia opera sólo en el formulario o en el módulo donde se haya puesto. Para
tener esa opción activa para todo el código de una aplicación, ejecute la orden Opciones
del menú Herramientas, elija el dialogo Entorno y Seleccione la opción Declaración de
Variables Requerida. Seleccionada esta opción agrega la sentencia Option Explicit en
cualquier nuevo modulo que creemos.

Alcances de las variables

El alcance de las variables se refiere al área del programa en las cuales es visible
la variable; es decir en áreas del proyecto tendremos disponible las variables.

Las variables declaradas dentro de funciones o procedimientos, será de alcance


local. Estas variables son reinicializadas cada ves que se ejecuta el procedimiento. Las
variables de nivel de formulario, estarán disponibles para todos los procedimientos del
formulario.
 Variables Publicas: se utilizan en todo el proyecto

Cuando declaramos una variable como publica en un modulo de programa o en el


formulario inicial, podremos utilizar esta variable en todo el proyecto:

Ejemplo
Public NoFactura as long

 Variables Privadas: se utilizan sólo en el procedimiento

Estas variables estarán disponibles solo dentro de nuestro formulario o


procedimiento, según el lugar donde se haya declarado:

Ejemplo
Dim NoFactura as long

 Variables Estáticas: No pierden su valor

Con esta forma de declarar variables conseguiremos que las variables locales no se
creen y se destruyan al entrar y salir de los procedimientos donde fueron declaradas
sino que se mantenga su valor durante todo el periodo de ejecución de la aplicación.
De esta forma a entrar en algún procedimiento las variables recuerdan el valor que
tenían cuando se salió de él.

Ejemplo
Static Nombre

Resumen de Alcance de las Variables

Alcance Declaración

Local Dim, Static (Dentro de un procedimiento)

Módulo Dim o Private (sección de declaraciones del módulo)

Global Public (sección de declaraciones de un módulo)

A nivel del módulo, no hay diferencias entre Dim y private, pero se aconseja utilizar
private en contraste con Public
Matrices

Para declarar matrices debemos colocar entre paréntesis el número de elementos


de los que constará a continuación del nombre de la variable:

Dim medidas(9) as integer

De esta forma tenemos una matriz de 10 elementos identificados del 0 al 9


Podemos obligar a que el primer elemento de una matriz tenga el índice con valor 1.

Las matrices multidimensionales se declaran de la siguiente forma:

Dim medidas(1 to 10, 1 to 10) as integer

Tipos de datos definidos por el usuario

El usuario puede definir los datos en VB en la sección General de Declaraciones de un


modulo de código, usando la palabra clave Type y End Type. Ej:

Type empleado ‘ Crear tipo definido por el usuario.


NoEmpleado As integer
Nombre As String(30)
FechaIngreso as date
Salario As doublle
End Type

Constantes

Como su palabra lo dice es Información que no varía hace más fácil la comprensión del
código y permite modificar un valor en un solo lugar no ocupa espacio extra, Ejemplo:

Const Mínimo = 1, Máximo = 10


Operadores

La tabla siguiente muestra un conjunto de operadores comunes que soporta Visual


Basic para utilizarlos en programación:

Operador Operación que realiza


+ Suma
- Resta
* Multiplicación
/ División
\ División Entera
Mod Residuo de la división entera
^ Exponenciación
& Concatenación
=, <>,<,>,<=,>= Igual, diferente, menor, mayor........

Conversiones

Visual Basic nos proporciona varias funciones de conversión de datos, las cuales nos
permiten convertir el valor de una variable al tipo de variable correcto. Esto es
importante cuando trabajamos con datos Variant y queremos convertirlo a otro tipo
de variable más exacta o para realizar validaciones en los datos.

CBol(expresión) conversión a un valor tipo Boolean


CByte(expresión) conversión a un valor tipo Byte
CCur(expresión) conversión a un valor tipo Currency
CDate(expresión) conversión a un valor tipo Date
CDbl(expresión) conversión a un valor tipo Double
CInt(expresión) conversión a un valor tipo Integer
CLng(expresión) conversión a un valor tipo Long
CSng(expresión) conversión a un valor tipo Single
CStr(expresión) conversión a un valor tipo String
CVar(expresión) conversión a un valor tipo Variant
CErr(expresión) conversión a un valor tipo Error
E/S (Entradas y Salidas) Sencillas

 La Función Inputbox()

La función Inputbox(), despliega un mensaje en un cuadro de diálogo, espera a


que el usuario introduzca el texto o seleccióne un boton y luego devuelve el contenido
del cuadro de texto. El valor que devuelve la función es un valor tipo variant .

Sintaxis:
Valor = inputbox (Mensaje,Titulo,omisión,10,10,ArchAyuda,Context)

Ejemplo:
Valor = inputbox(“Mensaje”, “Prueba”, , 10,10)

Parámetros:
Mensaje : Mensaje del cuadro de texto
Titulo : Titulo del cuadro de texto
Omisión : Texto por omisión (default)
posx, posy : Posición donde deberá aparecer el cuadro de texto
ArchAyuda : Cuando se utiliza archivo de ayuda
Context : Índice del archivo de ayuda

 El procedimiento MsgBox y la Funcion MsgBox()

Tanto la función como el procedimiento MsgBox, despliegan un cuadro de dialogo y


espera a que el usuario seleccione un botón. La función MsgBox() devuelve un valor
entero, indicando cual de los botones de opción ha presionado el usuario.

Sintaxis
Resp = MsgBox(Mensaje, Tipo, Título, ArchAyuda, Contexto)

MsgBox Mensaje, Tipo, Título, ArchAyuda , Contexto


Ejemplo
MsgBox "Esta es una prueba", vbInformation, "Ejemplo"

Parámetros:
Mensaje : Mensaje ha desplegar en pantalla
Tipo : Tipo de Botón (Error, Información, Pregunta) + Tipo de Opciones (OK,
No, Cancel, Retry)
Titulo : Titulo del Cuadro de Mensajes
ArchAyuda : Archivo de Ayuda
Context : Indice de Ayuda

Valores de Configuración Tipo MsgBox

Valor Significado Constante VB


0 Despliega Boton OK (Aceptar) VbOKOnly
1 Despliega los botones OK y Cancel VbOkCancel
2 Despliega los botones, Abort, Retry e Ignore vbAbortRetryIngnore
3 Despliega los botones Yes, No , Cancel VbYesNoCancel
4 Despliega los botones Yes (si) y No(No) VbYesNo
5 Despliega los botones Retry y Cancel VbRetryCancel
16 Despliega el icono Critical (parada critica) VbCritical
32 Despliega el icono signo de interrogación VbQuestion
48 Despliega signo de exclamación VbExclamation
64 Despliega icono de Información VbInformation
0 El primer boton por omisión VbDefaultButton1
256 El segundo boton por omisión VbDefaultButton2
512 El Tercer Boton por omision VbDefaultButton3
0 Modal Fijo en la Aplicación VbAplication Modal
4096 Modal Fijo del Sistema VbSystemModal
Valores de Retorno de MsgBox()

Valor Significado Constante VB


1 Botón OK Seleccionado VbOK
2 Botón CANCEL Seleccionado Vbancel
3 Botón ABORT Seleccionado VbAbort
4 Botón RETRY Seleccionado VbRetry
5 Botón YES Seleccionado VbYes
6 Botón NO Seleccionado VbNo
Estructuras de Decisión
Las estructuras de decisión de Visual Basic, caen en dos amplias categorías
familiares para todos los programadores de computación: Ramificaciones y Ciclos. Los
dispositivos de ramificado como If...Then y Select Case, hacen que el programa
continué en una dirección en particular sin mirar nunca atrás. Las construcciones de
ciclos como Do...Loop y While...Wend, se usan para repetir un cierto bloque limitado de
instrucciones hasta que se cumplan las condiciones especificadas.

Estructuras de Ramificación

 If...Else...EndIf

Ejemplo:

Resp = MsgBox("Seleccione", vbQuestion + vbYesNo, "Prueba")

If Resp = vbYes Then


MsgBox "Presiono Yes"
Else
MsgBox "Presiono No"
End If

 If ElseIf EndIf

If Resp = vbYes Then


Mess = “Presiono SI”
ElseIf Resp = vbNo Then
Mess = “Presiono NO”
ElseIf Resp = vbCancel Then
Mess = “Presiono Cancelar”
End If

Este fragmento de código toma una decisión basada en tres valores mutuamente
excluyentes, VbYes, VbNo y VbCancel, para la variable Resp.

 IIf

Esta función requiere tres argumentos, la condición para verificar, que devolver si la
condición es cierta y que devolver si es falsa.

Color = IIf ( Color < 15, Color, 1)


En este caso, el color permanece igual mientras sea menor que 15, a menos que
sea mayor que 15, en cuyo caso obtiene el valor de 1.

 Select Case....End Select

Cuando se necesite ejecutar uno de varios grupos de instrucciones, dependiendo del


valor de una cadena o expresión numérica, es mejor la construcción Select
Case...End Select:

Select Case edad


Case 5
Mess = “ 5 años de edad”
Case 13 to 19
Mess = “Joven”
Case 20 to 35, 50 , 60 to 65
Mess = “Adulto
Case Is > 65
Mess = “Respetable”
Case Else
Mess = “Todos”
End Select

Estructuras de Repetición (Ciclos)

Existen diversas estructuras de repetición en Visual Basic. La estructura


While...Wend ejecuta rápidamente una o más instrucciones mientras una condición
dada es cierta:

Sintaxis
While condicion
[instrucciones]
Wend

La condición es una expresión numérica o de cadena que evalúa True (cierto) o


False (falso). Si la condicion es True, todos los enunciados se ejecutan hasta que se
encuentra la palabra clave Wend. En este punto, regresa al enunciado While y la
condición se evalúa nuevamente, y si todavía se cumple se reptie el proceso, de lo
contrario continua con la instrucción posterior al Wend.

While i < 15
Print i
i = i + 1
Wend
La estructura Do....Loop proporciona una forma más adecuada y flexible para
ejecutar ciclos. Esta repite un bloque de código mientras una condición es True o a
partir de que la condición llegue a ser True.

Do Until rsClientes.EOF
Print rdClientes(“Nombre”)
RsClientes.movenext
Loop

Igualmente se puede utilizar

Do

If (i = 10) Then
MsgBox "llego 10"
Exit Do
Else
Print i
End If
i = i + 1
Loop Until i > 20

La estructura For…Next repite un grupo de instrucciones, un número especificado de


veces. Este ciclo crea una variable de contador, especificando sus valores inicial o final.

For I = 0 to 10
Print I
Next I

Se pueden especificar que el contador incremente o decremente en intervalos


especificados mediante el uso de Step. Fácilmente se podría imprimir una columna de
números que muestre un incremento gradual del 5%.

For Porc = 0 to 100 step 5


Print Porc
Next Porc
Procedimientos y Funciones

Procedimiento

Un procedimiento es un conjunto de instrucciones que realizan una tara específica sin


retornar ningún valor. Este procedimiento se puede ejecutar las veces que sea llamado
desde cualquier módulo del programa.

Los Procedimientos de declaran con la palabra reservada Sub seguido de el nombre


del procedimiento con sus parámetros respectivos.

Ejemplo
Sub CentrarForma(F as form)
F.left = (screen.width – F.width)/2
F.Top = (screen.height – F.height)/2
End Sub

Para Hacer el llamado del procedimiento, se debe hacer usando la palabra reservada
Call y luego el nombre del procedimiento.

Ejemplo

Call CentrarForma(frmFicha)

Funciones

Es un procedimiento que realiza una tarea específica dentro de un programa y al final se


obtiene un valor de retorno. Una función se define en un modulo que inicia con la
instrucción Function y termina con la instrucción End Function

Ejemplo:

Function Calcular(val1 As Integer, val2 As Double) As Double


Dim total As Double

total = val1 * val2


Calcular = total

End Function
Llamado de la función:

Z = Calcular( x , y )

El uso de funciones y/o procedimientos, permiten crear rutinas personalizadas por


los programadores para satisfacer las necesidades de su aplicación en particular y evitar
la inconveniente e innecesaria repetición de código. Se puede aumentar el poder y la
versatilidad de los procedimientos incluyendo cualquiera de las instrucciones y funciones
integrados de VB, así como las rutinas previamente definidas por usted.
Controles Básicos

Los controles son objetos predeterminados que disponen de propiedades y


métodos propios, los cuales nos brindan mucha utilidad para el desarrollo de nuestras
aplicaciones.

CommandButton
Utilice un control CommandButon para comenzar, interrumpir o terminar un proceso.
Cuando está activado, un CommandButon aparece presionado y a veces se denomina
boton de comando.

Label
Un control Label es un control gráfico que permite mostrar un texto que un usuario no
puede modificar directamente. Tambien conocido como etiqueta, este control se utiliza
para mostrar textos e instrucciones en las formas.

Line
Es un control gráfico que se muestra como una línea horizontal, vertical o diagonal.
Puede usar este control para dibujar líneas en formularios.

Shape
Shape, es un control gráfico que se muestra como rectángulo, un cuadrado, una elipse,
un círculo, un rectángulo redondeado o un cuadro redondeado. Utilice controles Shape
en tiempo de diseño para el diseño de formularios en lugar de los métodos Circle y
Line.

Picture
El objeto Picture le ofrece una forma de manipular mapa de bits, iconos, metarchivo
mejorados e imágenes GIF y JPEJ asignados a objetos que tengan la propiedad Picture.

CheckBox
Un control CheckBox muestra una  cuando está activado. El carácter desaparece
cuadno el control se desactiva. Utilice este control para ofrecer al usuario una opción de
tipo verdadero o falso, o Sí o No. Puede usar controles CheckBox en grupos para
mostrar múltiples opciones entre las cuales el usuario pueda seleccionar una o más.
OptionButton
Un control OptionButton muestra una opción que se puede activar o desactivar.

Generalmente, estos controles se utilizan en grupos de opciones en las cuales el


usuario solo puede seleccionar una. Los controles OptionButton se agrupan si los dibuja
dentro de un contenedor como en un control Frame, un PictureBox o un Formulario.

Frame
Un control Frame proporciona un agrupamiento identificable para controles. También
puede usar un control Frame para subdividir un formulario funcionalmente; por ejemplo,
para separar grupos de controles OptionButton.

Timer
Un control Timer puede ejecutar código a intervalos periódicos produciendo un evento
Timer.

El control Timer, invisible para el usuario, resulta útil para el procesamiento de fondo. No
existe ningún limite práctico en cuanto al número de controles Timer activos que puede
tener Visual Basic ejecutándose.

DTPicker
Utilice el control DTPicker para proporcionar un campo fecha con formato que facilite la
selección de fecha. Además, los usuarios pueden seleccionar una fecha a partir de una
interfaz de calendario desplegable similar a la del control MonthView.

El Control DTPicker tiene dos modos de funcionamiento:


1. El control calendario desplegable (predeterminado) se muestra al usuario un
calendario desplegable en el que se puede seleccionar una fecha.
2. El modo formato de hora, el usuario selecciona en un campo la hora (hora,
minutos, segundos).
Formularios MDI

Un formulario MDI (Multiple Document Interface) es un contenedor de otros


formularios. La aplicación MDI contendrá un formulario padre MDI y los formularios hijos
MDI.

Muchas aplicaciones Windows son programas MDI. Excel, por ejemplo, puede
desplegar muchas hojas de calculo dentro de su misma ventana principal, todas sobre la
misma base, por así decirlo. Específicamente, un formulario MDI es una ventana que
actúa como la base de una aplicación y es el contenedor de otros formularios que tienen
la propiedad MDI Child establecida como True.

Las Ventanas hijas pueden abrirse, minimizarse, redimensionarse, moverse y


tratarse como cualquier ventana normal, sin embargo siempre permanecen dentro del
área de la ventana padre; es decir, no pueden arrastrarse fuera del área de la ventana
principal.

Usted crea un formulario MDI (padre) mediante la selección de MDI Form del
menú Project . Una aplicación sólo puede tener un formulario padre. Los formularios
MDI, sólo pueden contener objetos del menú, cuadros de dibujo, barras de
herramientas, barras de estado etc.

En resumen, los formularios MDI, no pueden tener controles (a excepción de


algunos) ni objetos, simplemente es el formulario padre de la aplicación, el cual se
diseñan los menús principal y barras de herramientas del sistema que nos permitan
llamar a nuestros formularios de trabajo.
Si un formulario hijo tiene menús, la barra de menú del formulario hijo reemplaza
automáticamente a la barra del menú del objeto MDI, mientras este activo. La Barra del
menú que se diseña para un formulario hijo MDI se desplegará sobre el formulario padre
MDI en tiempo de ejecución, cuando el formulario hijo MDI este activo, aunque este
aparezca en el formulario hijo en tiempo de diseño.

Creación de Menús

El Editor de Menú es una aplicación de diseño de menú que se incluye en Visual


Basic. Se utiliza para crear menús personalizados de su aplicación. Para iniciar el editor
de menú, puede seleccionarlo en el menú Herramientas Tools y luego editor de menús.

Editor de Menu:
Así se mostrará el menú al momento de
ejecutarlo

El cuadro de texto Name es donde usted teclea el nombre de control para el


elemento del menú. Para permitir el acceso por teclado puede asignarle un ampersand
(&) antes de una letra o asignado un acceso rápido(shortcut) para ese opción del menú.
También puede asignar una barra de división mediante el tecleo de un solo guión (-).

Use los botones de esquema (flechas izquierda, derecha, arriba, abajo) para
ajustar los niveles (la jerarquía) de los submenú.

Barras de Herramientas
Se utilizan barras de herramientas (ToolBar), para proporcionar al usuario un
acceso rápido a las opciones más importante de nuestro sistema, así como para
mostrarle un ambiente gráfico familiar al de todas las aplicaciones Windows.

Ejemplo de Aplicación utilizando el control ToolBar


Barra de herramientas
Control TooolBar

Lista de Imágenes
Control ImageList

Para Crear una barra de herramientas con iconos gráficos, primeramente se debe
utilizar el control ImageList, el cual tendrá el arreglo de imágenes que se utilizarán asi
como las propiedades de los gráficos.

El primer paso será colocar el control de imágenes sobre el formulario en el que


se desea la barra de herramientas. Luego acceder a las propiedades de éste con el botn
derecho del ratón.

Entre las opciones que se deberá fijar están el tamaño de los gráficos, así como
indicar la ruta donde se encuentran ubicados los archivos gráficos y finalmente
nombrarlos y ponerles un número de índice con el cual los identificaremos en el control
ToolBar.

Ejemplo del control ImageList del menú anterior


Una vez fijado los gráficos, se procede a colocar el control ToolBar y a fijar las
propiedades del mismo, en las cuales se seleccionaran tipo de botón, relieve de la barra,
lista de imágenes que se usarán, acciones del mouse etc.
Control de Unidades, Directorios y Archivos

El control DriveListBox permite al usuario seleccionar una unidad válida de disco


en tiempo de ejecución. Este despliega una lista ordenada de las unidades del disco
usuario y reacciona automáticamente a los clic del ratón. La propiedad más importante
de un DirveListBox es la propiedad Drive, el cual proporciona la unidad actual
seleccionada por dicho control. Para sincronizar el DriveListBox con el DirListBox, es
necesario indicar lo siguiente en el evento Change:

Dir1.Path = Drive1.Drive

El control DirListBox despliega una lista jerárquica ordenada de los directorios y


subdirectorios del disco del usuario, según la unidad seleccionada por el DriveListBox,
permitiendo al usuario navegar entre ellos. Para Mostrar la lista de archivos en el
directorio seleccionado es necesario añadir lo siguiente y sincronizarlo con el
FileListBox:

File1.Path = Dir1.Path

El Control FileListBox localiza y lista archivos en el directorio especificado por su


propiedad Path en tiempo de ejecución. Usted puede usar este control para desplegar
una lista de archivos en el direcotorio actual o puede establecer la propiedad Patern
para mostrar solamente cierto tipo de archivos.

Ejemplo:
Manejador de Errores

Hay errores de diferentes tipos: errores de sintaxis, los que ocurren cuando se
teclea un mal comando o falta un argumento; los errores en tiempo de ejecución, que
son causados por circunstancias fuera de control del programa, que no se previeron en
tiempo de diseño; y los errores lógicos, que provocan que su programa produzca
resultados incorrectos o inesperados.

Visual Basic manipula el primer tipo de error, los de sintaxis, detectando los
problemas de sintaxis cuando se escribe el código del programa. Los otros dos tipos de
errores, deben ser corregidos por usted. El manejo de errores en tiempo de ejecución es
el que aprenderemos a manejar a continuación, para evitar la interrupción del programa
en tiempo de ejecución.

En Visual Basic, los errores en tiempo de ejecución se refieren como errores


interceptables, esto es, Visual Basic reconoce que se ha producido un error y le permite
intercepartlo y realizar una acción correctiva, de lo contrario se finalizará la aplicación.

La manera de manejar los errores, es mediante el uso de la instrucción On Error


GoTo de Visual Basic.

Esta es la sintaxis:
On Error GoTo “procedimiento”

En este caso “procedimiento” es una manera de identificar un bloque de código y


es, simplemente, una sola palabra en una línea seguida por dos puntos (:).

Ejemplo:

Private Sub cmdTest_Clic()

On Error GoTo Manejo

Exit Sub
Manejo:
MsgBox “Ha ocurrido un error”
Resume
End Sub

La instrucción Resume le permite volver a intentar la operación que causo el error. Esto
puede ser o no lo que usted desea, dependiendo de la naturaleza del error. De hecho, si
el error fue debido a algo en el que el usuario no puede hacer nada, Resume causará un
ciclo infinito.
La instrucción Resume también puede usarse para devolver el control a la instrucción
que sigue inmediatamente a la que provocó el error (Resume Next), o para pasar a otra
línea o procedimiento dentro del mismo procedimiento principal.

Un manejador de errores amigable con el usuario desplegará el número y la descripción


del error y ofrecerá algunas alternativas de cómo proceder después de ocurrido el error.
El objeto Err sirve para reportar el error (número y descripción). En este caso se podrá
indicar el error de la siguiente forma:

Msgbox “Ha ocurrido el error No” & Err.Number & “ – “ & Err.Descripción

El manejo de errores proporciona una forma de que su programa tenga trato con los
procesos fallidos, de lo contrario la aplicación se cerrará completamente. Para practicar
el manejador de errores, se puede aplicar al ejemplo de los DriveListBox al error que
ocurre cuando se selecciona una unidad no válida.

Das könnte Ihnen auch gefallen