Manual Visual Basic - Introduccion a Visual Basic-ByReparaciondepc.cl
Visual Basic 6 Leonel Orozco Celaya ([email protected]) Página 2 VISUAL BASIC ASPECTOS GENERALES...
Transcript of Visual Basic 6 Leonel Orozco Celaya ([email protected]) Página 2 VISUAL BASIC ASPECTOS GENERALES...
Febrero de 2010
Una breve introducción | Profr. Leonel Orozco Celaya
PROFE231 VISUAL BASIC 6.0
Profesor: Leonel Orozco Celaya ([email protected]) Página 2
VISUAL BASIC
ASPECTOS GENERALES
Cuando nace la programación orientada a objetos, uno de los principios más importantes
era la reutilización de código, es decir, codificando una sola vez, podríamos usar ese objeto
en cualquiera de nuestros proyectos sin volver a codificarlo, lo que supone un considerable
ahorro de tiempo y costo en el diseño y mantenimiento.
Visual Basic es un lenguaje de programación de propósito general, con una gran potencia
en toda su estructura. Su implementación en el sistema operativo Windows y sus
herramientas visuales, han hecho de este lenguaje uno de los más usados en lo que a
desarrollo de aplicaciones se refiere.
La palabra "Visual" hace referencia al método que se utiliza para crear la interfaz gráfica de
usuario (GUI). En lugar de escribir numerosas líneas de código para describir la apariencia y
la ubicación de los elementos de la interfaz, simplemente puede agregar objetos
prefabricados en su lugar dentro de la pantalla.
La palabra "Basic" hace referencia al lenguaje BASIC (Beginners All-Purpose Symbolic
Instruction Code), un lenguaje utilizado por más programadores que ningún otro lenguaje
en la historia de la informática o computación.
Los proyectos o aplicaciones que se crean con VB son ejecutables en sistemas operativos de
32 bits, tal como lo son windows 95, 98, ME, NT, XP.
Características de la programación con VB
La interfaz de usuario se crea usando barras de herramientas con objetos (controles)
prefabricados, cada uno con una función específica que facilita la creación de la
aplicación.
Programación orientada a eventos. Al estar diseñado para trabajar con el SO Windows,
su entorno gráfico también responde a eventos. Por ejemplo, si se oprime determinada
tecla ocurre “algo” o cuando se pulsa con el botón del ratón pasa “algo diferente”, estos
son eventos a los que debe estar preparada una aplicación creada con VB.
En una aplicación controlada por eventos, el código no sigue una ruta determinada,
ejecuta distintas secciones de código como respuestas a los eventos (acciones de
usuario, mensajes del sistema, código, etc.)
Profesor: Leonel Orozco Celaya ([email protected]) Página 3
Todos los lenguajes de programación para Windows comparten la misma característica:
la orientación a eventos. Las aplicaciones creadas para Windows no siguen una
estructura de ejecución lineal. Esto implica que un programa no va a seguir una
secuencia fija de instrucciones, ejecutándose línea a línea, sino que debe responder a las
acciones que el usuario, el sistema operativo u otras aplicaciones realizan sobre él; estas
acciones se conocen en Visual Basic como eventos.
Un evento es una acción reconocida por un formulario o un control. Las aplicaciones
controladas por eventos ejecutan código Basic como respuesta a un evento. Cada
formulario y control de Visual Basic tiene un conjunto de eventos predefinidos. Si se
produce uno de dichos eventos y el procedimiento de evento asociado tiene código,
Visual Basic llama a ese código (un procedimiento de evento).
Utiliza una aproximación interactiva para el desarrollo. Interpreta el código a medida
que se escribe, interceptando y resaltando la mayoría de los errores de sintaxis en el
momento.
Compila parcialmente el código según se escribe. Al ejecutar y probar la aplicación,
tardará poco tiempo en terminar la compilación. Si el compilador encuentra un error,
quedará resaltado en el código. Se puede corregir el error y seguir compilando sin tener
que empezar de nuevo.
La programación con VB
Al igual que en cualquier lenguaje de programación, el programador tiene dos alternativas
para desarrollar la aplicación: sentarse delante de la computadora y empezar a crear todos
los elementos que se necesitan, o se puede determinar los pasos para el desarrollo del
programa antes de escribirlo.
La primera alternativa que aparenta ser la más rápida, es la menos indicada para diseñar una
aplicación, así que se recomendará seguir con la segunda opción.
1. Planificar
2. Crear el programa
2.1. Interfaz gráfica de usuario
2.2. Asignar propiedades
2.3 Escribir el código
3. Probar el código
4. Compilar
Profesor: Leonel Orozco Celaya ([email protected]) Página 4
5. Distribuir
La planificación. Consiste en determinar qué debe hacer el programa (es el algoritmo).
Algunas de las preguntas que se pueden formular son las siguientes:
o ¿Cuál es el objetivo del programa?
o ¿Qué información ingresara el usuario?
o ¿Qué hará el programa con la información?
o ¿Qué respuestas producirá y cómo las dará?
Interfaz de usuario. Define la manera en la cual la aplicación interactuará con el usuario.
Para ello se hace uso de las barras de herramientas que proporciona VB.
El administrador de PROYECTOS
Para crear una aplicación con Visual Basic se trabaja con proyectos. Un archivo de proyecto
(.vbp). es una colección de archivos que se usan para generar una aplicación. Después de
ensamblar todos los componentes de un proyecto y escribir el código, se puede compilar el
proyecto para crear un archivo ejecutable.
Las siguientes secciones describen los diferentes tipos de archivos y objetos que se pueden
incluir en un proyecto.
1. Módulos de formulario
Los módulos de formulario (extensión de nombre de archivo .frm) pueden contener texto
descriptivo del formulario y sus controles, incluyendo los valores de sus propiedades.
También pueden contener declaraciones de formulario de constantes, variables y
procedimientos externos, así como procedimientos de evento y procedimientos
generales.
2. Módulos de clase
Los módulos de clase (.cls) son similares a los módulos de formulario, excepto en que no
tienen interfaz de usuario visible. Se pueden usar módulos de clase para crear objetos
propios, incluyendo código para métodos y propiedades.
3. Módulos estándar
Los módulos estándar (.bas) pueden contener declaraciones públicas o a nivel de
módulo de tipos, constantes, variables, procedimientos externos y procedimientos
públicos.
Profesor: Leonel Orozco Celaya ([email protected]) Página 5
4. Archivos de recursos
Los archivos de recursos (extensión de nombre de archivo .res) contienen mapas de bits,
cadenas de texto y otros datos que se pueden modificar sin volver a modificar el código.
5. Documentos ActiveX
Los documentos ActiveX (.dob) son similares a los formularios, pero se muestran en un
explorador de Internet como Internet Explorer.
6. Módulos de controles de usuario y de páginas de propiedades
Los módulos de controles de usuario (.ctl) y de páginas de propiedades (.pag) son
similares a los formularios, pero se usan para crear controles ActiveX y las páginas de
propiedades asociadas para mostrar propiedades en tiempo de diseño.
7. Componentes
Además de archivos y módulos, también es posible agregar otro tipo de componentes a
un proyecto.
Controles ActiveX
Los controles ActiveX (extensión de nombre de archivo .ocx) son controles opcionales
que se pueden agregar al cuadro de herramientas y se pueden usar en formularios.
Objetos insertables
Los objetos insertables, como un objeto Hoja de cálculo de Microsoft Excel, son
componentes que se pueden usar como bloques para generar soluciones integradas.
Una solución integrada puede contener datos en diferentes formatos, como hojas de
cálculo, mapas de bits y texto, creados por diferentes aplicaciones.
Referencias
También puede agregar referencias a componentes ActiveX externos que se pueden
usar en la aplicación.
Diseñadores ActiveX
Los diseñadores ActiveX son herramientas para diseñar clases a partir de las cuales es
posible crear objetos. La interfaz de diseño para formularios es el diseñador
predeterminado. Puede haber disponibles otros diseñadores adicionales desde otros
orígenes.
Controles estándar
Los controles estándar los proporciona Visual Basic. Los controles estándar, como
CommandButton (botón de comando) o Frame (marco), siempre están incluidos en
el cuadro de herramientas, al contrario de lo que ocurre con los controles ActiveX y
los objetos insertables, que se pueden agregar y quitar del cuadro de herramientas.
Profesor: Leonel Orozco Celaya ([email protected]) Página 6
Elementos para la creación de una aplicación
El primer paso para crear una aplicación con Visual Basic es crear la interfaz, es decir, la
parte visual de la aplicación con la que va a interactuar el usuario. Los formularios y
controles son los elementos de desarrollo básicos que se usan para crear la interfaz; son los
objetos con los que se trabaja para desarrollar la aplicación.
Los objetos de Visual Basic aceptan propiedades, métodos y eventos. En VB, los datos de
un objeto (configuración o atributos) se llaman propiedades, mientras que los diversos
procedimientos que pueden operar sobre el objeto se conocen como sus métodos (es lo
que puede hacer con el objeto). Un evento es una acción reconocida por un objeto, como
hacer clic con el mouse o presionar una tecla, y puede escribir código que responda a ese
evento.
Los objetos de Visual Basic se crean a partir de clases; así, un objeto se dice que es una
instancia de una clase. La clase define las interfaces de un objeto, si el objeto es público y en
qué circunstancias se puede crear
Formularios
Los formularios son objetos que exponen las propiedades que definen su apariencia, los
métodos que definen su comportamiento y los eventos que definen la forma en que
interactúan con el usuario. Mediante el establecimiento de las propiedades del formulario y
la escritura de código de Visual Basic para responder a sus eventos, se personaliza el objeto
para cubrir las necesidades de la aplicación.
Ciclo de vida de un formulario
Comprender el ciclo de vida de un formulario es básico para el programador de VB, puesto
que son estos elementos los que permitirán al usuario interactuar con la aplicación. Sólo
comprendiendo qué acciones podrán realizarse sobre los formularios y en qué momentos,
podremos controlar adecuadamente la ejecución de nuestros programas.
En la vida de un formulario puede pasar por cinco estados diferentes. En orden cronológico
son:
Profesor: Leonel Orozco Celaya ([email protected]) Página 7
Creado: el formulario existe como objeto, pero todavía no es visible. Cuando un
formulario está siendo creado, se genera el evento Initialize. En esta fase del proceso de
carga de un formulario no podemos actuar sobre los objetos que lo componen.
Cargado: ya podemos acceder a los controles del formulario, pero éste no es visible. Un
formulario se encuentra en este estado en el proceso de carga, cuando se oculta o
cuando se establece a False su propiedad Visible. Cuando se inicia el proceso de carga
de un formulario, se genera el evento Load.
Mostrado: Es el estado normal de un formulario. Podemos acceder a todos los
elementos que lo componen y podemos actuar sobre ellos, pues el formulario es visible.
Durante este estado, cada vez que hay que repintar el formulario (por ejemplo, cuando
una ventana que se ha situado sobre éste desaparece) se genera el evento Paint.
Además, si el formulario recupera el foco después de haberlo perdido (por ejemplo, al
cambiar a otra aplicación con Alt+Tab y volver después al formulario), se genera el
evento Activate.
Descargado: una vez terminado este proceso el formulario no es visible, y sus
componentes no son accesibles. El proceso de descarga se produce cuando se cierra el
formulario (pulsando el botón CERRAR , ejecutando el método Unload del formulario,
etc). El proceso de descarga de un formulario, a su vez, generará dos eventos:
QueryUnload y Unload (en este orden). En los dos eventos podemos detener el proceso
de descarga estableciendo el valor del parámetro Cancel a cualquier número distinto de
0. En general, aprovecharemos estos eventos para liberar la memoria ocupada por los
elementos que pertenecen al formulario antes de que este se cierre, salvar el trabajo que
esté pendiente de guardado, etc.
Eliminado: aunque un formulario esté descargado, mientras existe cualquier referencia
al mismo no será eliminado totalmente de memoria. Cuando se produce esta
circunstancia (el formulario está descargado y nadie hace referencia a él) se genera el
evento Terminate, y el formulario desaparece de memoria.
Controles
Los controles son objetos que están contenidos en los objetos de formularios. Cada tipo de
control tiene su propio conjunto de propiedades, métodos y eventos, que lo hacen
adecuado para una finalidad determinada.
Profesor: Leonel Orozco Celaya ([email protected]) Página 8
Puntero (Pointer). Permite seleccionar objetos dentro del proyecto;
se puede cambiar el tamaño o mover un control que ya se ha
dibujado en un formulario.
PictureBox. Muestra imágenes gráficas (decorativas o activas), como
un contenedor que recibe la salida de los métodos gráficos o como
un contenedor para otros controles.
Label. Permite definir texto que el usuario no podrá cambiar, tales
como encabezados o diversos mensajes.
TextBox. Contiene el texto que el usuario puede escribir o cambiar.
Su principal finalidad es la entrada de datos.
Marco (Frame). Permite crear un agrupamiento funcional o gráfico de
controles. Para agrupar controles, se debe dibujar primero el marco y
después dibujar los controles dentro del marco.
CommandButton. Crea un botón en el que el usuario puede hacer
clic para ejecutar un comando.
CheckBox. Crea una casilla de verificación que el usuario puede
seleccionar fácilmente para indicar si algo es verdadero o falso, o que
presenta al usuario múltiples opciones cuando éste puede elegir más
de una.
OptionButton. Permite mostrar múltiples opciones de las que el
usuario sólo puede elegir una.
ComboBox. Permite crear una combinación de cuadro de texto y
cuadro de lista. El usuario puede seleccionar un elemento de la lista
o escribir un valor en el cuadro de texto.
ListBox. Se utiliza para mostrar una lista de elementos de los que el usuario puede
escoger uno. La lista se puede desplazar si tiene más elementos de los que se pueden
mostrar en un momento dado.
HScrollBar (barra de desplazamiento horizontal). Le proporciona una herramienta gráfica
para desplazarse rápidamente por una larga lista de elementos o de una gran cantidad
de información, para indicar la posición actual en una escala o para utilizarlo como un
dispositivo de entrada o un indicador de velocidad o de cantidad.
VScrollBar (barra de desplazamiento vertical). Le proporciona una herramienta gráfica
para desplazarse rápidamente por una larga lista de elementos o de una gran cantidad
de información, para indicar la posición actual en una escala o para utilizarlo como un
dispositivo de entrada o un indicador de velocidad o de cantidad.
Timer. Genera eventos Timer con los intervalos definidos. Este control no es visible en
tiempo de ejecución.
DriveListBox. Muestra las unidades de disco válidas.
DirListBox (cuadro de lista de directorios). Muestra los directorios y las rutas de acceso.
Profesor: Leonel Orozco Celaya ([email protected]) Página 9
FileListBox. Muestra una lista de archivos.
Formas (Shape). Permite dibujar una gran variedad de formas en el formulario, en tiempo
de diseño. Puede elegir entre un rectángulo, un rectángulo redondeado, un cuadrado, un
cuadrado redondeado, un óvalo o un círculo.
Line. Se utiliza para dibujar una gran variedad de estilos de línea en el formulario en
tiempo de diseño.
Imagen (Image). Muestra en el formulario una imagen gráfica de un mapa de bits, un
icono o un metarchivo . Las imágenes que se muestran en un control Image sólo pueden
ser decorativas y utilizan menos recursos que un control PictureBox.
Datos (Data). Le proporciona acceso a los datos almacenados en bases de datos
mediante los controles enlazados del formulario.
ActiveX. Permite vincular e incrustar objetos de otras aplicaciones en la aplicación de
Visual Basic.
Profesor: Leonel Orozco Celaya ([email protected]) Página 10
FUNDAMENTOS DE PROGRAMACION
Una aplicación no es más que un conjunto de instrucciones para que el equipo realice una o
varias tareas. La estructura de una aplicación es la forma en que se organizan las
instrucciones; es decir, dónde se almacenan las instrucciones y el orden en que se ejecutan.
Puesto que una aplicación de Visual Basic se basa en objetos, la estructura de su código se
aproxima mucho a su representación física en pantalla. Por definición, los objetos contienen
datos y código. El formulario que ve en la pantalla es una representación de las propiedades
que definen su apariencia y su comportamiento intrínseco. Por cada formulario de una
aplicación hay un módulo de formulario relacionado (con la extensión de nombre de archivo
.frm) que contiene su código.
Cada módulo de formulario contiene procedimientos de evento (secciones de código donde
se colocan las instrucciones que se ejecutarán como respuesta a eventos específicos). Los
formularios pueden contener controles. Por cada control de un formulario, existe el
correspondiente conjunto de procedimientos de evento en el módulo de formulario.
Además de procedimientos de evento, los módulos de formulario pueden contener
procedimientos generales que se ejecutan como respuesta a una llamada desde cualquier
procedimiento de evento.
El código de una aplicación de Visual Basic está organizado de forma jerárquica. Una
aplicación típica está compuesta por uno o más módulos: un módulo de formulario por
cada formulario de la aplicación, módulos estándares opcionales para el código compartido
y módulos de clase opcionales.
Secuencia típica de eventos en una aplicación controlada por eventos:
1. Se inicia la aplicación y se carga y muestra un formulario.
2. El formulario (o un control del formulario) recibe un evento. El evento puede estar
causado por el usuario (por ejemplo, por la pulsación de una tecla), por el sistema (por
ejemplo, un evento de cronómetro) o, de forma indirecta, por el código (por ejemplo, un
evento Load cuando el código carga un formulario).
3. Si hay código en el procedimiento de evento correspondiente, se ejecuta.
4. La aplicación espera al evento siguiente.
El código en Visual Basic se almacena en módulos. Hay tres tipos de módulos: de formulario,
estándar y de clase.
Profesor: Leonel Orozco Celaya ([email protected]) Página 11
CONCEPTOS BASICOS DEL CODIGO:
Dividir una única instrucción en varias líneas
Puede dividir una instrucción larga en varias líneas en la ventana del Editor de código si
utiliza el carácter de continuación de línea (un espacio en blanco seguido de un signo de
subrayado).
Data1.RecordSource = "SELECT * FROM Titles, Publishers" _
& "WHERE Publishers.PubId = Titles.PubID"
Combinar instrucciones en una línea
Se puede colocar mas de una instruccción en una línea si se utiliza un signo de dos puntos
(:) para separarlas:
Text1.Text = "Hola" : Red = 255 : Text1.BackColor = _
Red
ELEMENTOS DEL LENGUAJE
CONSTANTES
Una constante es un nombre significativo que sustituye a un número o una cadena que no
varía.
Hay dos orígenes para las constantes:
Constantes intrínsecas o definidas por el sistema proporcionadas por aplicaciones y
controles.
En Visual Basic, los nombres de constantes tienen un formato que combina
mayúsculas y minúsculas, con un prefijo que indica la biblioteca de objetos que
define la constante. Las constantes de las bibliotecas de objetos de Visual Basic y
Visual Basic para aplicaciones tienen el prefijo "vb"; por ejemplo, vbTileHorizontal.
Las constantes simbólicas o definidas por el usuario se declaran mediante la
instrucción Const.
La sintaxis para declarar una constante es la siguiente:
[Public|Private] Const nombreConstante[As tipo] = expresión
Profesor: Leonel Orozco Celaya ([email protected]) Página 12
Una instrucción Const puede representar una cantidad matemática, de cadena de
caracteres o de fecha y hora:
Const conPi = 3.14159265358979
Public Const conMaxPlanetas As Integer = 9
Const conFechaSalida = #1/1/95#
Public Const conVersion = "07.10.A"
Const conNombreClave = "Enigma"
Alcance de las constantes definidas por el usuario
Una instrucción Const tiene igual alcance que una declaración de variable y se le aplican las
mismas reglas:
Para crear una constante que sólo exista en un procedimiento, se debe declara
dentro del procedimiento.
Para crear una constante disponible para todos los procedimientos de un módulo,
pero no para el código que está fuera del módulo, declararla en la sección
Declaraciones del módulo.
Para crear una constante disponible en toda la aplicación, declarar la constante en la
sección Declaraciones de un módulo estándar y la palabra clave Public.
VARIABLES
Se declara una variable mediante la instrucción Dim, proporcionando un nombre a la
variable:
Dim | Public | Static nombreVariable [As tipo]
Las variables que se declaran en un procedimiento mediante la instrucción Dim sólo existen
mientras se ejecuta el procedimiento. Cuando termina el procedimiento, desaparece el valor
de la variable. Además, el valor de una variable de un procedimiento es local de dicho
procedimiento; es decir, no puede tener acceso a una variable de un procedimiento desde
otro procedimiento. Estas características permiten usar los mismos nombres de variables en
distintos procedimientos sin preocuparse por posibles conflictos o modificaciones
accidentales.
Profesor: Leonel Orozco Celaya ([email protected]) Página 13
Static. Se consigue que las variables locales no se creen y destruyan al entrar y salir de los
procedimientos donde fueron declaradas sino que mantengan su valor mientras se ejecuta
la aplicación.
El nombre de una variable:
Debe comenzar con una letra.
No puede incluir un punto o un carácter de declaración de tipo.
No debe exceder de 255 caracteres.
Debe ser única en el mismo alcance, que es el intervalo desde el que se puede hacer
referencia a la variable: un procedimiento, formulario, etc.
La cláusula opcional As tipo de la instrucción Dim le permite definir el tipo de dato o de
objeto de la variable que va a declarar.
Establecer el alcance de las variables
Dependiendo de cómo se declara, una variable tiene como alcance un procedimiento (local)
o un módulo.
Alcance Privado Público
Nivel de procedimiento Las variables son privadas del
procedimiento en el que aparecen.
No es aplicable. No puede declarar
variables públicas dentro de un
procedimiento.
Nivel de módulo Las variables son privadas del módulo en
el que aparecen.
Las variables están disponibles para
todos los módulos.
TIPOS DE DATOS
Tipo de datos Valores aceptados
Boolean True, False / Si, No
Byte 0 - 255
Currency Tipo de dato muy útil para los cálculos que incluyen dinero o cálculos
de signo decimal fijo, en los que la exactitud es extremadamente
importante. Este tipo de datos se utiliza para almacenar números de
hasta 15 dígitos a la izquierda del signo decimal y 4 dígitos a la derecha.
Profesor: Leonel Orozco Celaya ([email protected]) Página 14
Date (Time) Tipo de datos utilizado para almacenar fechas y horas como
un número real. El valor de la izquierda de los decimales
representa la fecha y valor de la derecha representa una
hora.Time. Tipo de datos que almacena un valor de hora. El valor
depende del valor del reloj del origen de datos.
Double Valores decimales de doble precisión
Integer - 32,768 hasta 32,767
Long Almacena como un número de 32 bits de longitud (4 bytes) con un
valor comprendido en el rango -2,147,483,648 a 2,147,483,647.
Object Tipo de datos que representa cualquier referencia a un tipo
Object. Las variables Object se almacenan como
direcciones de 32 bits (4 bytes) que hacen referencia a
objetos.
Single Almacena números de signo flotante de precisión simple en
formato IEEE. Las variables Single se almacenan como
números de 32 bits (4 bytes) dentro del intervalo -
3,402823E38 a -1,401298E-45 para valores negativos,
1,401298E-45 a 3,402823E38 para valores positivos y 0.
String Cadenas de caracteres
Variant Tipo de datos especial que contiene datos numéricos, cadenas o fechas,
así como los valores especiales Empty y Null. Todas las variables se
convierten en tipo variante, si no se declaran explícitamente de otro
tipo.
Profesor: Leonel Orozco Celaya ([email protected]) Página 15
Operadores de Visual Basic 6.0
Tipo Operación Operador en
Vbasic
Aritmético
Exponenciación ^
Cambio de signo (operador unario) - -
Multiplicación, división *, /
División entera \
Resto de una división entera Mod
Suma y resta +, -
Concatenación
Concatenar o enlazar & +
Relacional
Igual a =
Distinto <>
Menor que / menor o igual que < <=
Mayor que / mayor o igual que > >=
Otros
Comparar dos expresiones de caracteres Like
Comparar dos referencias a objetos Is
Lógico
Negación Not
And And
Or inclusivo Or
Or exclusivo Xor
Equivalencia (opuesto a Xor) Eqv
Implicación Imp
And, Or
Not Negación lógica de una expresión
Xor Realiza una exclusión lógica entre dos expresiones
Si una y sólo una de las expresiones es True, el resultado es True.
Eqv Realiza una equivalencia de dos expresiones.
Si las dos expresiones son verdaderas o falsas, el resultado es verdadero (True).
Imp Realiza una implicación lógica de dos expresiones.
El resultado de la expresión es falsa, sólo si la primera es verdadera y la
segunda es falsa; en todos los demás casos es verdadera.
Profesor: Leonel Orozco Celaya ([email protected]) Página 16
Prioridad de los operadores
Cuando hay varias operaciones en una misma expresión, cada parte de la misma se evalúa y
se resuelve en un orden predeterminado según la prioridad de los operadores
Cuando hay expresiones que contienen operadores de más de una categoría, se resuelven
antes las que tienen operadores aritméticos, a continuación las que tienen operadores de
comparación y por último las de operadores lógicos. Los operadores de comparación tienen
todos, la misma prioridad; es decir, se evalúan de izquierda a derecha, en el orden en que
aparecen. Los operadores lógicos y aritméticos se evalúan en el siguiente orden de
prioridad:
Aritméticos Comparación Lógicos
Exponenciación (^) Igualdad (=) Not
Negación (–) Desigualdad (<>) And
Multip. y división (*, /) Menor que (<) Or
División de enteros (\) Mayor que (>) Xor
Módulo aritmético (Mod) Menor o igual que (<=) Eqv
Adición y substracción (+, –) Mayor o igual que (>=) Imp
Profesor: Leonel Orozco Celaya ([email protected]) Página 17
ESTRUCTURA DE CONTROL
Selectivas
If...Then
Usar la estructura If...Then para ejecutar una o más instrucciones basadas en una
condición.
If condición Then instrucción
If condición Then
instrucciones
End If
If...Then...Else
Para definir varios bloques de instrucciones, uno de los cuales se ejecutará:
If condición1 Then
[bloque de instrucciones 1]
[ElseIf condición2 Then
[bloque de instrucciones 2]] ...
[Else
[bloque de instrucciones n]]
End If
Select Case
Visual Basic proporciona la estructura Select Case como alternativa a If...Then...Else
para ejecutar selectivamente un bloque de instrucciones entre varios bloques de
instrucciones.
La estructura Select Case funciona con una única expresión de prueba que se evalúa una
vez solamente, al principio de la estructura. Visual Basic compara el resultado de esta
expresión con los valores de cada Case de la estructura. Si hay una coincidencia, ejecuta
el bloque de instrucciones asociado a ese Case:
Profesor: Leonel Orozco Celaya ([email protected]) Página 18
Select Case expresiónPrueba
[Case listaExpresiones1
[bloque de instrucciones 1]]
[Case listaExpresiones2
[bloque de instrucciones 2]]
.
.
.
[Case Else
[bloque de instrucciones n]]
End Select
Cada listaExpresiones es una lista de uno o más valores. Si hay más de un valor en una
lista, se separan los valores con comas. Cada bloque de instrucciones contiene cero o
más instrucciones. Si más de un Case coincide con la expresión de prueba, sólo se
ejecutará el bloque de instrucciones asociado con la primera coincidencia. Visual Basic
ejecuta las instrucciones de la cláusula (opcional) Case Else si ningún valor de la lista de
expresiones coincide con la expresión de prueba.
Ejemplo:
Dim num As Integer
num = 100
Select Case num
Case 0
MsgBox "Es cero"
Case 1, 2, 3
MsgBox "Es 1, 2 o 3"
Case 1 To 100
MsgBox "Es positivo menor o igual a 100"
Case Is > 100
MsgBox "Positivo mayor a 100"
Case Else
MsgBox "Es Negativo"
End Select
Profesor: Leonel Orozco Celaya ([email protected]) Página 19
Repetitivas
Do...Loop
Utilizar el bucle Do para ejecutar un bloque de instrucciones un número indefinido de
veces. Hay algunas variantes en la instrucción Do...Loop, pero cada una evalúa una
condición numérica para determinar si continúa la ejecución.
En el ejemplo de Do...Loop siguiente, las instrucciones se ejecutan siempre y cuando
condición sea True:
Do While condición
instrucciones
Loop
Otra variante de la instrucción Do...Loop ejecuta las instrucciones primero y prueba
condición después de cada ejecución. Esta variación garantiza al menos una ejecución de
instrucciones:
Do
Instrucciones
Loop While condición
Hay otras dos variantes análogas a las dos anteriores, excepto en que repiten el bucle
siempre y cuando condición sea False en vez de True.
Hace el bucle cero o más veces Hace el bucle al menos una vez
Do Until condición
instrucciones
Loop
Do
instrucciones
Loop Until condición
For … Next
For contador = iniciar To finalizar [Step incremento]
instrucciones
Next [contador]
Profesor: Leonel Orozco Celaya ([email protected]) Página 20
While … Wend
Ejecuta una serie de instrucciones mientras la condición sea verdadera.
While condición
[intrucciones]
Wend
Profesor: Leonel Orozco Celaya ([email protected]) Página 21
PROCEDIMIENTOS Y FUNCIONES
Procedimiento Sub
Es un bloque de código que se ejecuta como respuesta a un evento.
La sintaxis de un procedimiento Sub es la siguiente:
[Private|Public][Static] Sub nombreProcedimiento (argumentos)
instrucciones
End Sub
Se pueden colocar en módulos estándar, módulos de clase y módulos de formulario. De
forma predeterminada, son Public en todos los módulos, lo que significa que se les puede
llamar desde cualquier parte de la aplicación.
Se clasifican en:
Procedimientos Generales
Un procedimiento general indica a la aplicación cómo realizar una tarea específica. Una vez
que se define un procedimiento general, se le debe llamar específicamente desde la
aplicación.
Procedimientos de Eventos
Cuando un objeto en Visual Basic reconoce que se ha producido un evento, llama
automáticamente al procedimiento de evento utilizando el nombre correspondiente al
evento. Como el nombre establece una asociación entre el objeto y el código, se dice que
los procedimientos de evento están adjuntos a formularios y controles.
Un procedimiento de evento de un control combina el nombre real del control
(especificado en la propiedad Name), un carácter de subrayado (_) y el nombre del
evento.
Un procedimiento de evento de un formulario combina la palabra "Form", un carácter de
subrayado y el nombre del evento.
Procedimiento Function:
Procedimiento que realiza una tarea específica dentro de un programa de Visual Basic y
devuelve un valor.
Profesor: Leonel Orozco Celaya ([email protected]) Página 22
La sintaxis de un procedimiento Function es la siguiente:
[Private|Public][Static] Function nombreProcedimiento (argumentos) [As tipo]
instrucciones
End Function
Al igual que un procedimiento Sub, un procedimiento Function es un procedimiento
diferente que puede tomar argumentos, realizar una serie de instrucciones y cambiar el
valor de los argumentos. A diferencia de los procedimientos Sub, los procedimientos
Function pueden devolver un valor al procedimiento que realiza la llamada.
Ejemplo:
Private Sub boton_Click ()
Dim cadena as String
Cadena = Iif (EsPrimo(Val(text1)),”Es primo”,”No es primo”)
MsgBox cadena
End Sub
Function EsPrimo (x As Integer) As Bolean
Dim i as Integer
EsPrimo = True
If x > 3 Then
i = 2
Do Until i > x-1
If x Mod I = 0 Then
EsPrimo = False
i =x
Else
i = i + 1
End If
Loop
End iF
End Function
Profesor: Leonel Orozco Celaya ([email protected]) Página 23
Algunas funciones de Visual Basic
Función Matemática Función en VB Función Matemática Función en VB
Valor absoluto Abs(x) Nº aleatorio Rnd
Arco tangente Atn(x) Seno y coseno Sin(x), Cos(x)
Exponencial Exp(x) Tangente Tan(x)
Parte entera Int(x), Fix(x) Raíz cuadrada Sqr(x)
Logaritmo Log(x) Signo (1, 0, -1) Sgn(x)
Redondeo Round(x, ndec)
Utilidad Función de VB 6.0
Número de caracteres de una cadena Len(string | varname)
Conversión a minúsculas o a
mayúscula
LCase(x), UCase(x)
Conversión de cadenas a números y
de números a cadenas
Str(n), CStr(n), Val(string)
Extracción de un nº de caracteres en
un rango, de la parte derecha o
izquierda de una cadena
Mid(string, ini[, n])
Right(string, length)
Left(string, length)
Extracción de sub-cadenas Split(string, [[delim], n])
Unión de sub-cadenas Join(string, [delim])
Comparación de cadenas de
caracteres
strComp(str1, str2)
Hallar si una cadena es parte de
otra(está contenida como sub-cadena)
InStr([n], str1, str2)
Hallar una cadena en otra a partir del
final (reverse order)
InstrRev(str1, str2, [n])
Buscar y reemplazar una subcadena
por otra en una cadena
Replace(string, substring,
replacewith)
Profesor: Leonel Orozco Celaya ([email protected]) Página 24
Descripción general de propiedades de Formularios y Controles
Propiedades más comunes de los FORMULARIOS
GENERALES
Name Nombre con el cual se identificará al formulario en la codificación.
Icon Icono que se muestra en la parte superior derecha del formulario.
Keypreview Devuelve o establece un valor que determina si los eventos de
teclado de los formularios se invocan antes que los eventos de
teclado de los controles. Los eventos de teclado son KeyDown,
KeyUp y KeyPress.
MaxButton Determina si el formulario se puede o no maximizar.
MinButton Determina si el formulario se puede o no minimizar.
MousePointer Permite seleccionar el apuntador del ratón.
WindowState Selecciona el modo en el cual se ejecutará el formulario: normal,
maximizado o minimizado.
APARIENCIA
BackColor Define el color de fondo del formulario
BorderStyle Define el tipo de borde del formulario: sin borde, si se puede
Profesor: Leonel Orozco Celaya ([email protected]) Página 25
cambiar el tamaño, etc.
Caption Texto que aparece en la parte superior del formulario.
FillColor Color con el cual se llenarán los círculos y cuadros.
FillStyle Estilo de relleno: sólido, horizontal, etc.
ForeColor Color de la fuente del formulario.
Picture Permite seleccionar y mostrar una imagen en el formulario.
POSICION
Height Devuelve/asigna la altura del formulario.
Left D/A la distancia a la izquierda con el objeto contenedor del
formulario.
Moveable D/A un valor que determinar si el formulario puede ser desplazado.
StatUpPosition D/A la posición del formulario con respecto a su contenedor o de la
pantalla.
Top D/A la distancia entre la parte superior del contenedor con respecto
al formulario.
Width D/A el ancho del formulario.
Convenciones de nombres de objetos
Los objetos deben llevar nombres con un prefijo coherente que facilite la identificación del
tipo de objeto. A continuación se ofrece una lista de convenciones recomendadas para
algunos de los objetos permitidos por Visual Basic.
Prefijos sugeridos para controles
Tipo de control Prefijo Ejemplo
Barra de desplazamiento horizontal hsb hsbVolumen
Barra de desplazamiento vertical vsb vsbIndice
Barra de estado sta staFechaHora
Barra de progreso prg prgCargarArchivo
Botón animado ani aniBuzon
Botón de número spn spnPaginas
Botón de opción opt optGenero
Botones de comando cmd cmdSalir
Profesor: Leonel Orozco Celaya ([email protected]) Página 26
Casilla de verificación chk chkSoloLectura
Comunicaciones com comFax
Contenedor OLE ole oleHojaCalculo
Control (se usa en procedimientos cuando el tipo
específico es desconocido)
ctr ctrActual
Control deslizante sld sldEscala
Cronómetro tmr tmrAlarma
Cuadrícula grd grdPrecios
Cuadrícula de datos dgd dgdTitulos
Cuadrícula enlazada a datos dbgrd dbgrdResultadosConsulta
Cuadrícula MS Flex msg msgClientes
Cuadro combinado de datos dbc dbcAutor
Cuadro combinado de imagen imgcbo imgcboProducto
Cuadro combinado enlazado a datos dbcbo dbcboIdioma
Cuadro combinado, cuadro de lista desplegable cbo cboIngles
Cuadro de imagen pic picVGA
Cuadro de lista lst lstCodigos
Cuadro de lista de archivos fil filOrigen
Cuadro de lista de directorios dir dirSource
Cuadro de lista de unidades drv drvDestino
Cuadro de lista enlazada a datos dblst dblstTipoTrabajo
Cuadro de texto txt txtApellido
Datos dat datBiblio
Datos ADO ado adoBiblio
Datos remotos rd rdTitulos
Diálogo común dlg dlgAbrirArchivo
Etiqueta lbl lblMensajeAyuda
Profesor: Leonel Orozco Celaya ([email protected]) Página 27
Fichas tab tabOpciones
Hierarchical Flexgrid flex flexPedidos
Forma shp shpCirculo
Formulario frm frmEntrada
Gráfico gra graGanancias
Imagen img imgIcono
Información del sistema sys sysMonitor
Línea lin linVertical
Lista de datos dbl dblEditor
Lista de imágenes ils ilsTodosIconos
Marco fra fraIdioma
MCI mci mciVideo
Mensaje MAPI mpm mpmEnviarMensaje
Menú mnu mnuAbrirArchivo
MS Chart ch chVentasPorRegion
MS Tab mst mstPrimero
Panel 3D pnl pnlGrupo
Picture clip clp clpBarraHerramientas
Repetidor de datos drp drpUbicacion
RichTextBox rtf rtfInforme
Selector de fecha dtp dtpEditado
Sesión MAPI mps mpsSesión
UpDown upd updDirección
Visor de árbol tre treOrganización
Visor de lista lvw lvwEncabezados
Vista de mes mvw mvwPeriodo