1. INTRODUCCIÓN
Visual Basic 6.0 es uno de los lenguajes de programación que más
entusiasmo despiertan entre los programadores de PCs, tanto expertos como
novatos. En el caso de los programadores expertos por la facilidad con la que
desarrollan aplicaciones complejas en poquísimo tiempo (comparado con lo que
cuesta programar en Visual C++, por
ejemplo). En el caso de los programadores novatos por el hecho de ver de lo que
son capaces a los pocos minutos de empezar su aprendizaje. El precio que hay
que pagar por utilizar Visual Basic 6.0 es una menor velocidad o eficiencia en las
aplicaciones.
Visual Basic 6.0 es un lenguaje de programación visual, también llamado
lenguaje de 4ª generación. Esto quiere decir que un gran número de tareas se
realizan sin escribir código, simplemente con operaciones gráficas realizadas
con el ratón sobre la pantalla.
Visual Basic 6.0 es también un programa basado en objetos, aunque no orientado
a objetos como C++ o Java. La diferencia está en que Visual Basic 6.0 utiliza objetos
con propiedades y métodos , pero carece de los mecanismos de herencia y polimorfismo propios de los verdaderos lenguajes
orientados a objetos como Java y C++.
En este primer capítulo se presentarán las características generales de Visual
Basic 6.0, junto con algunos ejemplos sencillos que den idea de la potencia del
lenguaje y del modo en que se utiliza.
1.1PROGRAMAS SECUENCIALES,
INTERACTIVOS
Y ORIENTADOS A EVENTOS
Existen distintos tipos de programas. En los primeros tiempos de los
ordenadores los programas eran de tipo secuencial (también llamados tipo batch)
Un programa secuencial es un programa que se arranca, lee los datos que
necesita, realiza los cálculos e imprime o guarda en el disco los resultados.
De ordinario, mientras un programa secuencial está ejecutándose no necesita
ninguna intervención del usuario. A este tipo de programas se les llama también
programas basados u orientados a procedimientos o a algoritmos (procedural
Languages) . Este tipo de programas siguen utilizándose ampliamente en
la actualidad, pero la difusión de los PCs ha puesto de actualidad otros tipos
de programación.
Los programas interactivos exigen la intervención del usuario en tiempo
de ejecución, bien para suministrar datos, bien para indicar al programa lo que
debe hacer por medio de menús. Los programas interactivos limitan y orientan la
acción del usuario. Un ejemplo de programa interactivo podría ser Matlab.
Por su parte los programas orientados a eventos son los programas
típicos de Windows, tales como Netscape, Word, Excel y PowerPoint. Cuando uno
de estos programas ha arrancado, lo único que hace es quedarse a la espera de
las acciones del usuario, que en este caso son llamadas eventos.
El usuario dice si quiere abrir y modificar un fichero existente, o bien
comenzar a crear un fichero desde el principio. Estos programas pasan la mayor
parte de su tiempo esperando las acciones del usuario (eventos) y respondiendo
a ellas. Las acciones que el usuario puede realizar en un momento determinado
son variadísimas, y exigen un tipo especial de programación: la programación orientada
a eventos. Este tipo de programación es sensiblemente más complicada que la
secuencial y la interactiva, pero Visual Basic 6.0 la hace especialmente
sencilla y agradable.
1.2 PROGRAMAS PARA EL ENTORNO
WINDOWS
Visual Basic 6.0 está orientado a la realización de programas para Windows,
pudiendo incorporar todos los elementos de este entorno informático: ventanas,
botones, cajas de diálogo y de texto, botones de opción y de selección, barras
de desplazamiento, gráficos, menús, etc. Prácticamente todos los elementos de
interacción con el usuario de los que dispone Windows 95/98/NT pueden ser
programados en Visual Basic 6.0 de un modo muy sencillo. En ocasiones bastan
unas pocas operaciones con el ratón y la introducción a través del teclado de
algunas sentencias para disponer de aplicaciones con todas las características
de Windows 95/98/NT. En los siguientes apartados se introducirán algunos conceptos
de este tipo de programación.
1.2.1Modo de Diseño y Modo de Ejecución
La aplicación Visual Basic de Microsoft puede trabajar de dos modos
distintos: en modo de diseño y en modo de ejecución. En modo de diseño el
usuario construye interactivamente la aplicación, colocando controles en el formulario,
definiendo sus propiedades, y desarrollando funciones para gestionar los eventos.
La aplicación se prueba en modo de ejecución. En ese caso el usuario
actúa sobre el programa (introduce eventos) y prueba cómo responde el programa.
Hay algunas propiedades de los controles que deben establecerse en modo de
diseño, pero muchas otras pueden cambiarse en tiempo de ejecución desde el
programa escrito en Visual Basic 6.0, en la forma en que más adelante se verá.
También hay propiedades que sólo pueden establecerse en modo de
ejecución y que no son visibles en modo de diseño. Todos estos conceptos – controles,
propiedades, eventos, etc.- se explican en los apartados siguientes.
1.2.2 Formularios y Controles
Cada uno de los elementos gráficos que pueden formar parte de una
aplicación típica de
Windows 95/98/NT es un tipo de control: los botones, las cajas de
diálogo y de texto, las cajas de selección desplegables, los botones de opción
y de selección, las barras de desplazamiento horizontales y verticales, los
gráficos, los menús, y muchos otros tipos de elementos son controles para Visual
Basic 6.0. Cada control debe tener un nombre a través del cual se puede hacer
referencia a él en el programa.
Visual Basic 6.0 proporciona nombres por defecto que el usuario puede
modificar. En el
Apartado 1.2.4 se exponen algunas reglas para dar nombres a los
distintos controles. En la terminología de Visual Basic 6.0 se llama formulario
(form) a una ventana. Un formulario puede ser considerado como una especie de
contenedor para los controles. Una aplicación puede tener varios formularios,
pero un único formulario puede ser suficiente para las aplicaciones más
sencillas. Los formularios deben también tener un nombre, que puede crearse siguiendo
las mismas reglas que para los controles.
1.2.3 Objetos y Propiedades
Los formularios y los distintos tipos de controles son entidades
genéricas de las que puede haber varios ejemplares concretos en cada programa.
En programación orientada a objetos (más bien basada en objetos, habría que
decir) se llama clase a estas entidades genéricas, mientras que se llama objeto
a cada ejemplar de una clase determinada. Por ejemplo, en un programa puede haber
varios botones, cada uno
de los cuales es un objeto del tipo de control command button, que sería la clase.
Cada formulario y cada tipo de control tienen un conjunto de propiedades
que definen su aspecto gráfico (tamaño, color, posición en la ventana, tipo y
tamaño de letra, etc.) y su forma de responder a las acciones del usuario (si
está activo o no, por ejemplo). Cada propiedad tiene un nombre que viene ya
definido por el lenguaje.
Por lo general, las propiedades de un objeto son datos que tienen
valores lógicos (True,
False) o numéricos concretos, propios de ese objeto y distintos de las
de otros objetos de su clase. Así pues, cada clase, tipo de objeto o control
tiene su conjunto de propiedades, y cada objeto o control concreto tiene unos
valores determinados para las propiedades de su clase.
Casi todas las propiedades de los objetos pueden establecerse en tiempo
de diseño y también -casi siempre- en tiempo de ejecución. En este segundo caso
se accede a sus valores por medio de las sentencias del programa, en forma
análoga a como se accede a cualquier variable en un lenguaje de programación.
Para ciertas propiedades ésta es la única forma de acceder a ellas. Por
supuesto Visual Basic 6.0 permite crear distintos tipos de variables, como más
adelante se verá.
Se puede acceder a una propiedad de un objeto por medio del nombre del
objeto a que pertenece, seguido de un punto y el nombre de la propiedad, como
por ejemplo optColor.objName. En el siguiente apartado se estudiarán las reglas
para dar nombres a los objetos.
1.2.4 Nombres de objetos
En principio cada objeto de Visual Basic 6.0 debe tener un nombre, por
medio del cual se hace referencia a dicho objeto. El nombre puede ser el que el
usuario desee, e incluso
Visual Basic 6.0 proporciona nombres por defecto para los diversos
controles. Estos nombres por defecto hacen referencia al tipo de control y van
seguidos de un número que se incrementa a medida que se van introduciendo más
controles de ese tipo en el formulario (por ejemplo VScroll1, para una barra de
desplazamiento - scroll bar - vertical, HScroll1, para una barra horizontal,
etc.).
Los nombres por defecto no son
adecuados porque hacen referencia al tipo de control, pero no al uso que de
dicho control está haciendo el programador. Por ejemplo, si se utiliza una barra
de desplazamiento para introducir una temperatura, conviene que su nombre haga
referencia a la palabra temperatura, y así cuando haya que utilizar ese nombre
se sabrá exactamente a qué control corresponde. Un nombre adecuado sería por
ejemplo
hsbTemp, donde las tres primeras letras indican que se trata de una horizontal
scroll bar, y las restantes (empezando por una mayúscula) que servirá para
definir una temperatura.
Existe una convención ampliamente aceptada que es la siguiente: se
utilizan siempre tres letras minúsculas que indican el tipo de control,
seguidas por otras letras (la primera mayúscula, a modo de separación)
libremente escogidas por el usuario, que tienen que hacer referencia al uso que
se va a dar a ese control, muestra las abreviaturas de los controles más
usuales, junto con la nomenclatura inglesa de la que derivan. En este mismo capítulo
se verán unos cuantos ejemplos de aplicación de estas reglas para construir
nombres.