Sunteți pe pagina 1din 53

1

Contenido
UNIDAD 1 ............................................................................................................................. 4
Tipos de lenguajes de Programacin ...................................................................................... 4
UNIDAD 2 ............................................................................................................................. 8
Lenguaje de Programacin Visual Basic ................................................................................ 8
QU ES VISUAL BASIC 6.0? ........................................................................................ 9
Inicio de Visual Basic ........................................................................................................ 9
La barra de mens y las barras de herramientas ............................................................... 10
El cuadro de herramientas (toolbox) ................................................................................ 13
Entorno de Programacin Visual Basic 6.0 ...................................................................... 13
Formularios y Controles ................................................................................................... 16
Objetos y Propiedades ...................................................................................................... 16
Nombres de objetos .......................................................................................................... 17
Eventos ............................................................................................................................. 19
Mtodos ............................................................................................................................ 19
Proyectos y ficheros.......................................................................................................... 20
Ejecicios: .......................................................................................................................... 20
UNIDAD 3. .......................................................................................................................... 30
Elementos del lenguaje. ........................................................................................................ 30
Sentencias de Control ................................................................................................... 34
Sentencia IF....THEN.....ELSE....END IF ........................................................................ 35
Sentencia DO...WHILE... LOOP .................................................................................. 49
Sentencia DO... UNTIL... LOOP .................................................................................. 51
Bibliografa ....................................................................................................................... 53


2

PROGRAMACIN I
Introduccin.
Muchos autores afirman que la idea de programar se remonta a principio del Siglo
XIX y no tiene nada que ver con la computacin. En 1801 un francs llamado
Joseph Marie Jacquard ide un mecanismo de tarjetas perforadas para controlar
los dibujos que formaban los hilos en una mquina para tejer. De esa manera,
lograba programar las puntadas de las mquina para obtener tramas y figuras
repetibles.
Ms tarde en 1843, Ada Augusta Byron, hija del poeta ingls Lord Byron, plante
la idea de usar tarjetas perforadas para controlar la maquina diferencial de
Babbage y lograr que repitiera ciertas operaciones. Esta idea tuvo tal repercusin
que, al da de hoy, se la considera como la primera programadora.
La programacin de computadoras consiste en organizar en forma de programa
un conjunto de instrucciones rdenes dadas a la mquina- que producirn la
ejecucin de una determinada tarea. En pocas palabras, un programa es un medio
para conseguir un fin. El proceso de programacin es bsicamente un proceso de
solucin de problemas.
En este mdulo conoceremos los diversos tipos de programas que se han
desarrollado a travs de la historia; adems estudiaremos el Visual Basic,
mediante el cual aprenderemos a desarrollar programas sencillos que nos
permitirn familiarizarnos con el lenguaje.
Objetivo.
Proporcionar al estudiante las herramientas necesarias para la elaboracin de sus
propios programas bsicos y avanzados.

3

Orientaciones metodolgicas.
La propuesta metodolgica se basa en el modelo centrado en el
estudiante y en los grupos colaborativos.
El estudiante es responsable de su proceso de aprendizaje; debe
interactuar con los contenidos del mdulo mediante el sistema de
educacin semipresencial, desarrollar un juicio crtico y tener iniciativa
de aprender en forma autnoma.
El participante debe realizar trabajos colaborativos con sus compaeros
de aula, de tal forma que entre ellos construyen diferentes experiencias
de aprendizaje, debe tambin participar en espacios de discusin
expresando de forma clara su criterio.
Durante el desarrollo del mdulo, tiene especial importancia actividades
como:
La entrega de tareas individuales y grupales tanto por escrito o va
internet.
Exposicin de tareas individuales y grupales utilizando
herramientas tecnolgicas
Autovaloracin de los temas propuestos
Investigacin de diferentes temas que enriquecern los
conocimientos de los participantes.
En los encuentros previstos segn el cronograma establecido, deben
llevar sugerencias, recomendaciones, criterios, inquietudes que tengan
relacin con el mdulo y los temas tratados en cada unidad.

4

UNIDAD 1
Tipos de lenguajes de Programacin
Introduccin.
Una computadora es una mquina que solo comprende las instrucciones que se le
den en un determinado formato. Cada mquina reconoce y ejecuta un nmero de
instrucciones diferentes que se agrupan en los distintos lenguajes de
programacin.
Un lenguaje de programacin es un conjunto limitado de palabras y de smbolos
que representan procedimientos, clculos, decisiones y otras operaciones que
pueden ejecutar una computadora. La clasificacin ms comn y bsica que suele
hacerse de los lenguajes de programacin es la que los divide en lenguajes de
bajo y de alto nivel.
Los lenguajes de programacin de bajo nivel fueron los primeros que surgieron y
se llaman as porque estn directamente relacionados con el hardware del
computador, es decir, el usuario introduce una serie de cdigos numricos que la
mquina va a interpretar como instrucciones. Para usar este lenguaje, el
programador tena que conocer el funcionamiento de la mquina al ms bajo nivel
y los errores de programacin eran muy frecuentes.
Los lenguajes de alto nivel surgieron con posterioridad con el primer compilador de
FORTRAN (FORmula TRANslation), que, como su nombre indica, inici como un
"simple" esfuerzo de traducir un lenguaje de frmulas, al lenguaje ensamblador y
por consiguiente al lenguaje de mquina, facilitando la labor a los programadores.
A partir de FORTRAN, se han desarrollado innumerables lenguajes, que siguen el
mismo concepto: facilitar la vida al programador, aumentando la productividad.
Objetivo.
Reconocer los diversos tipos de lenguajes usados en la programacin de
5

computadoras.
Clasificacin de los lenguajes de programacin
Los tipos de lenguajes de programacin los podemos clasificar en dos grandes
grupos:
Los lenguajes de programacin de bajo nivel y,
Los lenguajes de programacin de alto nivel.
El tipo de lenguaje de programacin de bajo nivel depende totalmente de la
mquina, en este caso de la computadora u ordenador, estos slo entienden el
lenguaje binario o el cdigo mquina, que consiste en ceros y unos. Es decir, que
para realizar cualquier accin, solo utilizan este tipo de lenguaje de programacin.
Este tipo de lenguaje de programacin son totalmente dependiente de la
computadora u ordenador, es decir que no podemos utilizarlo en cualquier otra,
estn prcticamente diseado a la medida del hardware y aprovecha las
caractersticas de este. Dentro de este tipo de lenguajes de programacin
podemos citar al lenguaje mquina y al lenguaje ensamblador.
Los lenguajes de programacin de bajo nivel estn ms cercanos a la arquitectura
del hardware. Mientras que los lenguajes de programacin de alto nivel se
encuentran ms prximos a los usuarios.
Dentro del tipo de lenguajes de programacin de alto nivel tenemos a todos
aquellos lenguajes de programacin que son ms afines al lenguaje natural que al
lenguaje mquina. Estos lenguajes de programacin son completamente
independientes de la arquitectura del hardware de la computadora u ordenador.
Por lo que en general, un programa escrito con un lenguaje de programacin de
alto nivel lo podemos utilizar en cualquier otra computadora.
Estos lenguajes usan un nmero reducido de instrucciones (normalmente en
ingls) que siguen unas estrictas reglas gramaticales que se conocen como
6

sintaxis del lenguaje. Pero aunque el programador de esta forma se distancie del
hardware del computador, este sigue trabajando en lenguaje mquina. Por ello se
hace necesaria una traduccin a una secuencia de instrucciones interpretables por
el computador. Esta labor es llevada a cabo por los compiladores y los intrpretes.
El papel del traductor consiste en entender el cdigo fuente y las caractersticas
de la mquina para poder funcionar correctamente.
A los lenguajes de alto nivel, tomando en consideracin su forma de operacin
podemos subdividirlos en:
Secuenciales
Interactivos
Orientados a eventos
En los primeros tiempos de los ordenadores los programas eran de tipo
secuencial (tambin llamados tipo batch) Un programa secuencial es un
programa que se arranca, lee los datos que necesita, realiza los clculos e
imprime o guarda en el disco los resultados; mientras un programa secuencial est
ejecutndose no necesita ninguna intervencin del usuario. A este tipo de
programas se les llama tambin programas basados u orientados a
procedimientos o a algoritmos (procedural languages). Este tipo de programas
siguen utilizndose ampliamente en la actualidad, pero la difusin de los PCs ha
puesto de actualidad otros tipos de programacin.
Los programas interactivos exigen la intervencin del usuario en tiempo de
ejecucin, bien para suministrar datos, bien para indicar al programa lo que debe
hacer por medio de mens.
Los programas interactivos limitan y orientan la accin del usuario. Un ejemplo de
programa interactivo podra ser Matlab. Por su parte los programas orientados a
eventos son los programas tpicos de Windows, tales como Netscape, Word,
Excel y PowerPoint. Cuando uno de estos programas ha arrancado, lo nico que
7

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
variadsimas, y exigen un tipo especial de programacin: la programacin
orientada a eventos. Este tipo de programacin es sensiblemente ms
complicada que la secuencial y la interactiva, pero Visual Basic 6.0 la hace
especialmente sencilla y agradable.
Resumen de la unidad.













TIPOS DE LENGUAJES DE
PROGRAMACIN

Bajo nivel Alto nivel
Secuenciales
Interactivos
Orientados a
eventos
8

UNIDAD 2
Lenguaje de Programacin Visual Basic
Introduccin.
Visual Basic es uno de los tantos lenguajes de programacin que podemos
encontrar
hoy en da. Dicho lenguaje nace del BASIC (Beginners All-purpose Symbolic
Instruction Code) que fue creado en su versin original en el Dartmouth College,
con el propsito de servir a aquellas personas que estaban interesadas en
iniciarse en algn lenguaje de programacin. Luego de sufrir varias
modificaciones, en el ao 1978 se estableci el BASIC estndar.
La sencillez del lenguaje gan el desprecio de los programadores avanzados por
considerarlo "un lenguaje para principiantes".
Primero fue GW-BASIC, luego se transform en QuickBASIC y actualmente se lo
conoce como Visual Basic y la versin ms reciente es la 6 que se incluye en el
paquete Visual Studio 6 de Microsoft. Esta versin combina la sencillez del BASIC
con un poderoso lenguaje de programacin Visual que juntos permiten desarrollar
robustos programas de 32 bits para Windows. Esta fusin de sencillez y la
esttica permiti ampliar mucho ms el monopolio de Microsoft, ya que el lenguaje
slo es compatible con Windows, un sistema operativo de la misma empresa.
Visual Basic 6.0 es uno de los lenguajes de programacin que ms 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 poqusimo 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.
9

Visual Basic 6.0 es un lenguaje de programacin visual, tambin llamado lenguaje
de 4 generacin. Esto quiere decir que un gran nmero de tareas se realizan sin
escribir cdigo, simplemente con operaciones grficas realizadas con el ratn
sobre la pantalla.
Visual Basic 6.0 es tambin 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 mtodos, pero carece de los mecanismos de herencia y
polimorfismo propios de los verdaderos lenguajes orientados a objetos como Java
y C++.
En este primer captulo se presentarn las caractersticas 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.
QU ES VISUAL BASIC 6.0?
Visual Basic 6.0 es una excelente herramienta de programacin que permite
crear aplicaciones propias (programas) para Windows. Con ella se puede crear
desde una simple calculadora hasta una hoja de clculo de la talla de Excel (en
sus primeras versiones...), pasando por un procesador de textos o cualquier otra
aplicacin que se le ocurra al programador.
Sus aplicaciones en Ingeniera son casi ilimitadas: representacin de movimientos
mecnicos o de funciones matemticas, grficas termodinmicas, simulacin de
circuitos, etc.
Este programa permite crear ventanas, botones, mens y cualquier otro elemento
de Windows de una forma fcil e intuitiva.
Inicio de Visual Basic
Par empezar a trabajar con Microsoft Visual Basic:
10

1. Haz clic en el botn Inicio
2. Selecciona Todos los Programas
3. Selecciona Microsoft Studio 6.0, Microsoft Visual Basic 6.0
Luego aparecer la pantalla de presentacin desde donde debers elegir una
opcin de trabajo, generalmente empezaremos con EXE estndar, luego haz clic
en el botn abrir.

La barra de mens y las barras de herramientas
La barra de mens de Visual Basic 6.0 resulta similar a la de cualquier otra
aplicacin de Windows, tal y como aparece en la Figura 1. Bajo dicha barra
aparecen las barras de herramientas, con una serie de botones que permiten
acceder fcilmente a las opciones ms importantes de los mens. En Visual
Basic 6.0 existen cuatro barras de herramientas: Debug, Edit, Form Editor y
Standard. Por defecto slo aparece la barra Standard, aunque en la Figura1 se
muestran las cuatro. Clicando con el botn derecho sobre cualquiera de las barras
de herramientas aparece un men contextual con el que se puede hacer aparecer
y ocultar cualquiera de las barras.
11

Fig.1

El men File tiene pocas novedades. Lo ms importante es la distincin entre
proyectos y todos los dems ficheros. Como ya se ha dicho, un proyecto rene y
organiza todos los ficheros que componen el programa o aplicacin (hace la
funcin de una carpeta que contuviera apuntes). Estos ficheros pueden ser
formularios, mdulos, clases, recursos, etc. Visual Basic 6.0 permite tener ms de
un proyecto abierto simultneamente, lo cual puede ser til en ocasiones. Con el
comando AddProject se aade un nuevo proyecto en la ventana Project
Manager. Con los comandos Open Project o New Project se abre o se crea un
nuevo proyecto, pero cerrando el o los proyectos que estuvieran abiertos
previamente. En este men est el comando Make ProjectName.exe, que permite
crear ejecutables de los proyectos.
Tampoco el men Edit aporta cambios importantes sobre lo que es habitual. Por
el contrario el men View, generalmente de poca utilidad, es bastante propio de
Visual Basic 6.0. Este men permite hacer aparecer en pantalla las distintas
ventanas del entorno de desarrollo, as como acceder a un formulario o al cdigo
relacionado con un control (que tambin aparece si se clica dos veces en dicho
control), y manejar funciones y procedimientos.
El men Project permite aadir distintos tipos de elementos a un proyecto
(formularios, mdulos, etc.). Con Project/Properties se puede elegir el tipo de
proyecto y determinar el formulario con el que se arrancar la aplicacin (Startup
Object). Con el comando Components se pueden aadir nuevos controles a la
Toolbox que aparece a la izquierda de la pantalla.
12

El men Format contiene opciones para controlar el aspecto de la aplicacin
(alinear controles, espaciarlos uniformemente, etc.). Los mens Debug y Run
permiten controlar la ejecucin de las aplicaciones. Con Debug se puede ver en
detalle cmo funcionan, ejecutando paso a paso, yendo hasta una lnea de cdigo
determinada, etc. Esto es especialmente til cuando haya que encontrar algunos
errores ejecutando paso a paso, o viendo resultados intermedios.
En el men Tools se encuentran los comandos para arrancar el Menu Editor
(para crear mens) y para establecer las opciones del programa. En
Tools/Options se encuentran las opciones relativas al proyecto en el que se
trabaja. La lengeta Environment determina las propiedades del entorno del
proyecto, como las opciones para actualizar o no los ficheros antes de cada
ejecucin; en General se establece lo referente a la retcula o grid que aparece en
el formulario; Editor permite establecer la necesidad de declarar todas las
variables junto con otras opciones de edicin, como si se quieren ver o no todos
los procedimientos juntos en la misma ventana, y si se quiere ver una lnea
separadora entre procedimientos; Editor Format permite seleccionar el tipo de
letra y los cdigos de color con los que aparecen los distintos elementos del
cdigo.
Por ltimo, la ayuda (siempre imprescindible y en el caso de Visual Basic 6.0
particularmente bien hecha) que se encuentra en el men Help, se basa
fundamentalmente en una clasificacin temtica ordenada de la informacin
disponible (Contents), en una clasificacin alfabtica de la informacin (Index) y
en la bsqueda de informacin sobre algn tema por el nombre (Search). Como
ya se ha mencionado, la tecla <F1> permite una ayuda directa sensible al
contexto, esto es dependiente de donde se haya clicado con el ratn (o de lo que
est seleccionado).
13

El cuadro de herramientas (toolbox)
La caja de herramientas, incluye los controles con los que se
puede disear la pantalla de la aplicacin. Estos controles son por
ejemplo botones, etiquetas, cajas de texto, zonas grficas, etc.
Para introducir un control en el formulario simplemente hay que
clicar en el icono adecuado de la toolbox y colocarlo en el
formulario con la posicin y el tamao deseado, clicando y
arrastrando con el ratn. Clicando dos veces sobre el icono de un
control aparece ste en el centro del formulario y se puede
modificar su tamao y/o trasladar con el ratn como se desee.
El nmero de controles que pueden aparecer en esta ventana vara con la
configuracin del sistema. Para introducir nuevos componentes se utiliza el
comando Components en el men Project, con lo cual se abre el siguiente
cuadro de dilogo.






Entorno de Programacin Visual Basic 6.0
Cuando se arranca Visual Basic 6.0 aparece la siguiente pantalla:
14


En ella se pueden distinguir los siguientes elementos:
1. La barra de ttulos, la barra de mens y la barra de herramientas de Visual
Basic 6.0 en modo Diseo (parte superior de la pantalla).
2. Caja de herramientas (toolbox) con los controles disponibles (a la izquierda de
la ventana).
3. Formulario (form) en gris, en que se pueden ir situando los controles (en el
centro). Est dotado de una rejilla (grid) para facilitar la alineacin de los
controles.
4. Ventana de proyecto, que muestra los formularios y otros mdulos de
programas que forman parte de la aplicacin (arriba a la derecha).
5. Ventana de Propiedades, en la que se pueden ver las propiedades del objeto
seleccionado o del propio formulario (en el centro a la derecha). Si esta ventana
no aparece, se puede hacer visible con la tecla <F4>.
1
2
3
4
5
6
15

6. Ventana FormLayout, que permite determinar la forma en que se abrir la
aplicacin cuando comience a ejecutarse (abajo a la derecha).
Existen otras ventanas para edicin de cdigo (Code Editor) y para ver variables
en tiempo de ejecucin con el depurador o Debugger (ventanas Immediate,
Locals y Watch). Todo este conjunto de herramientas y de ventanas es lo que se
llama un entorno integrado de desarrollo o IDE (Integrated Development
Environment).
Construir aplicaciones con Visual Basic 6.0 es muy sencillo: basta crear los
controles en el formulario con ayuda de la toolbox y del ratn, establecer sus
propiedades con ayuda de la ventana de propiedades y programar el cdigo que
realice las acciones adecuadas en respuesta a los eventos o acciones que realice
el usuario.
Cuando se ha terminado la programacin de la aplicacin hay que crear el
programa ejecutable para ser distribuido e instalado en los PCs que vayan a usar
dicho programa. Para crear el fichero ejecutable con extensin .exe se usa la
opcin de men Archivo - Crear Exe.
Modo de Diseo y Modo de Ejecucin
La aplicacin Visual Basic de Microsoft puede trabajar de dos modos distintos: en
modo de diseo y en modo de ejecucin. En modo de diseo el usuario
construye interactivamente la aplicacin, colocando controles en el formulario,
definiendo sus propiedades, y desarrollando funciones para gestionar los
eventos.
La aplicacin se prueba en modo de ejecucin. En ese caso el usuario acta
sobre el programa (introduce eventos) y prueba cmo responde el programa. Hay
algunas propiedades de los controles que deben establecerse en modo de
diseo, pero muchas otras pueden cambiarse en tiempo de ejecucin desde el
programa escrito.
16

Tambin hay propiedades que slo pueden establecerse en modo de ejecucin y
que no son visibles en modo de diseo.
Formularios y Controles
Cada uno de los elementos grficos que pueden formar parte de una aplicacin
tpica de Windows, es un tipo de control: los botones, las cajas de dilogo y de
texto, las cajas de seleccin desplegables, los botones de opcin y de seleccin,
las barras de desplazamiento horizontales y verticales, los grficos, los mens, y
muchos otros tipos de elementos son controles para Visual Basic 6.0. Cada control
debe tener un nombre a travs 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 la terminologa 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 aplicacin puede tener varios formularios, pero un nico formulario
puede ser suficiente para las aplicaciones ms sencillas. Los formularios deben
tambin tener un nombre, que puede crearse siguiendo las mismas reglas que
para los controles.
Objetos y Propiedades
Los formularios y los distintos tipos de controles son entidades genricas de las
que puede haber varios ejemplares concretos en cada programa. En
programacin orientada a objetos (ms bien basada en objetos, habra que decir)
se llama clase a estas entidades genricas, 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 sera la clase.
17

Cada formulario y cada tipo de control tienen un conjunto
de propiedades que definen su aspecto grfico (tamao,
color, posicin en la ventana, tipo y tamao 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 lgicos (True, False) o numricos
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 diseo y tambin -casi siempre- en tiempo de
ejecucin. En este segundo caso se accede a sus valores por medio de las
sentencias del programa, en forma anloga a como se accede a cualquier variable
en un lenguaje de programacin. Para ciertas propiedades sta es la nica forma
de acceder a ellas.
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.
Nombres de objetos
En principio cada objeto de Visual Basic 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 proporciona nombres por defecto para los diversos controles.
Estos nombres por defecto hacen referencia al tipo de control y van seguidos de
un nmero que se incrementa a medida que se van introduciendo ms controles
18

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 sera por ejemplo hsbTemp, donde las tres primeras letras
indican que se trata de una horizontal scroll bar, y las restantes (empezando por
una mayscula) que servir para definir una temperatura.
Existe una convencin ampliamente aceptada que es la siguiente: se utilizan
siempre tres letras minsculas que indican el tipo de control, seguidas por otras
letras (la primera mayscula, a modo de separacin) libremente escogidas por el
usuario, que tienen que hacer referencia al uso que se va a dar a ese control. La
Tabla 1.1 muestra las abreviaturas de los controles ms usuales, junto con la
nomenclatura inglesa de la que derivan. En este mismo captulo se vern unos
cuantos ejemplos de aplicacin de estas reglas para construir nombres.

19

Eventos
Ya se ha dicho que las acciones del usuario sobre el programa se llaman eventos.
Son eventos tpicos el clicar sobre un botn, el hacer doble clic sobre el nombre de
un fichero para abrirlo, el arrastrar un icono, el pulsar una tecla o combinacin de
teclas, el elegir una opcin de un men, el escribir en una caja de texto, o
simplemente mover el ratn.
Cada vez que se produce un evento sobre un determinado tipo de control, Visual
Basic 6.0 arranca una determinada funcin o procedimiento que realiza la
accin programada por el usuario para ese evento concreto. Estos procedimientos
se llaman con un nombre que se forma a partir del nombre del objeto y el nombre
del evento, separados por el carcter (_), como por ejemplo txtBox_click, que es
el nombre del procedimiento que se ocupar de responder al evento click en el
objeto txtBox.
Mtodos
Los mtodos son funciones que tambin son llamadas desde programa, pero a
diferencia de los procedimientos no son programadas por el usuario, sino que
vienen ya pre-programadas con el lenguaje. Los mtodos realizan tareas tpicas,
previsibles y comunes para todas las aplicaciones. De ah que vengan con el
lenguaje y que se libere al usuario de la tarea de programarlos. Cada tipo de
objeto o de control tiene sus propios mtodos.
Por ejemplo, los controles grficos tienen un mtodo llamado Line que se encarga
de dibujar lneas rectas. De la misma forma existe un mtodo llamado Circle que
dibuja circunferencias y arcos de circunferencia Es obvio que el dibujar lneas
rectas o circunferencias es una tarea comn para todos los programadores y que
Visual Basic 6.0 ya nos da resuelta.
20

Proyectos y ficheros
Cada aplicacin que se empieza a desarrollar en Visual Basic 6.0 es un nuevo
proyecto. Un proyecto comprende otras componentes ms sencillas, como por
ejemplo los formularios (que son las ventanas de la interface de usuario de la
nueva aplicacin) y los mdulos (que son conjuntos de funciones y
procedimientos sin interface grfica de usuario).
Cmo se guarda un proyecto en el disco? Un proyecto se compone siempre
de varios ficheros (al menos de dos) y hay que preocuparse de guardar cada uno
de ellos en el directorio adecuado y con el nombre adecuado. Existe siempre un
fichero con extensin *.vbp (Visual Basic Project) que se crea con el comando
File/Save Project As. El fichero del proyecto contiene toda la informacin de
conjunto. Adems hay que crear un fichero por cada formulario y por cada mdulo
que tenga el proyecto. Los ficheros de los formularios se crean con File/Save
Filename As teniendo como extensin *.frm. Los ficheros de cdigo o mdulos se
guardan tambin con el comando File/Save Filename As y tienen como extensin
*.bas si se trata de un mdulo estndar o *.cls si se trata de un mdulo de clase
(class module).
Clicando en el botn Save en la barra de herramientas se actualizan todos los
ficheros del proyecto. Si no se haban guardado todava en el disco, Visual Basic
6.0 abre cajas de dilogo Save As por cada uno de los ficheros que hay que
guardar.
Ejecicios:
Un sencillo programa de colores y posiciones
En la siguiente Figura se muestra el formulario y los controles de un ejemplo muy
sencillo que permite mover una caja de texto por la pantalla, permitiendo a su vez
representarla con cuatro colores diferentes.
21


En la Tabla inferior se describen los controles utilizados, as como algunas de sus
propiedades ms importantes (sobre todo las que se separan de los valores por
defecto). Los ficheros de este proyecto se llamarn Colores0.vbp y
Colores0.frm.

A continuacin se muestra el cdigo correspondiente a los procedimientos de este
ejemplo.
Option Explicit
Private Sub Form_Load()
txtCaja.Top = 0
End Sub
Private Sub optArriba_Click()
txtCaja.Top = 0
End Sub
Private Sub optAbajo_Click()
txtCaja.Top = frmColores0.ScaleHeight - txtCaja.Height
End Sub
Private Sub optAzul_Click()
txtCaja.BackColor = vbBlue
22

End Sub
Private Sub optRojo_Click()
txtCaja.BackColor = vbRed
End Sub
Private Sub optVerde_Click()
txtCaja.BackColor = vbGreen
End Sub
Private Sub optAmarillo_Click()
txtCaja.BackColor = vbYellow
End Sub

Minicalculadora elemental
En este ejemplo se muestra una
calculadora elemental que permite hacer las
cuatro operaciones aritmticas. Los ficheros
de este proyecto se pueden llamar
minicalc.vbp y minicalc.frm.
El usuario introduce los datos y clica sobre el botn correspondiente a la operacin
que desea realizar, apareciendo inmediatamente el resultado en la caja de texto
de la derecha.
Tabla de propiedades ms importantes de este ejemplo.

A continuacin se muestra el cdigo correspondiente a los procedimientos que
gestionan los eventos de este ejemplo.
23

Option Explicit
Private Sub cmdDiv_Click()
txtResult.Text = Val(txtOper1.Text) / Val(txtOper2.Text)
lblOp.Caption = "/"
End Sub
Private Sub cmdProd_Click()
txtResult.Text = Val(txtOper1.Text) * Val(txtOper2.Text)
lblOp.Caption = "*"
End Sub
Private Sub cmdResta_Click()
txtResult.Text = Val(txtOper1.Text) - Val(txtOper2.Text)
lblOp.Caption = "-"
End Sub
Private Sub cmdSuma_Click()
txtResult.Text = Val(txtOper1.Text) + Val(txtOper2.Text)
lblOp.Caption = "+"
End Sub

En este ejemplo se ha utilizado repetidamente la funcin Val() de Visual Basic.
Esta funcin convierte una serie de caracteres numricos (un texto formado por
cifras) en el nmero entero o de punto flotante correspondiente. Sin la llamada a la
funcin Val() el operador + aplicado a cadenas de caracteres las concatena, y
como resultado, por ejemplo, 3+4 dara 34.
Transformacin de unidades de temperatura
La Figura muestra un programa sencillo que
permite ver la equivalencia entre las escalas de
temperaturas en grados centgrados y grados
Fahrenheit. Los ficheros de este proyecto se
pueden llamar Temperat.vbp y Temperat.frm. En
el centro del formulario aparece una barra
de desplazamiento vertical que permite
desplazarse con incrementos pequeos de 1 C y
grandes de 10 C. Como es habitual, tambin
puede cambiarse el valor arrastrando con el ratn
24

el cursor de la barra.
Los valores mximos y mnimo de la barra son 100 C y -100 C.
A ambos lados de la barra aparecen dos cuadros de texto (color de fondo blanco)
donde aparecen los grados correspondientes a la barra en ambas escalas. Encima
aparecen dos rtulos (labels) que indican la escala de temperaturas
correspondiente. Completan la aplicacin un botn Salir que termina la ejecucin y
un men File con la nica opcin Exit, que termina asimismo la ejecucin del
programa.
Tabla de propiedades

Cdigo del programa
Option Explicit
Private Sub cmbSalir_Click()
Beep
End
End Sub
Private Sub mnuFileExit_Click()
End
End Sub
Private Sub vsbTemp_Change()
txtCent.Text = vsbTemp.Value
txtFahr.Text = 32 + 1.8 * vsbTemp.Value
End Sub

25

Explicacin
Sobre este tercer ejemplo se puede comentar lo siguiente:
1. Se ha utilizado la propiedad Value de la barra de desplazamiento, la cual da el
valor actual de la misma con respecto a los lmites inferior y superior, previamente
establecidos (-100 y 100).
2. Mediante el procedimiento cmdSalir_Click, se cierra el programa, gracias a la
instruccin End. El cometido de Beep no es otro que el de emitir un pitido a travs
del altavoz del ordenador, que indicar que en efecto se ha salido del programa.
3. La funcin mnuFileExit_Click() y activa desde el men y termina la ejecucin
sin emitir ningn sonido.
4. Finalmente, la funcin vsbTemp_Change() se activa al cambiar el valor de la
barra de desplazamiento; su efecto es modificar el valor de la propiedad text en
las cajas de texto que muestran la temperatura en cada una de las dos escalas.

Crea un formulario con 4 etiquetas, un reloj con intervalo de 1000 y escribe
el siguiente cdigo.
Prvate sub Timer1_Timer()
Label2.Caption=True
Label4.Caption=Date
End Sub
26

Calculadora 2

Crea un formulario con 4 etiquetas, 3 cajas de texto, una caja de combo, 3 botones y escribe
el siguiente cdigo:
Botn Nuevo clculo:
Private Sub Command1_Click()
Text1 = ""
Text2 = ""
Text3 = ""
Text1.SetFocus

End Sub

Botn calcular:
Private Sub Command2_Click()
If Combo1 = "Sumar" Then
Text3 = Val(Text1) + Val(Text2)
ElseIf Combo1 = "Restar" Then
Text3 = Val(Text1) - Val(Text2)
ElseIf Combo1 = "Multiplicar" Then
Text3 = Val(Text1) * Val(Text2)
ElseIf Combo1 = "Dividir" Then
Text3 = Val(Text1) / Val(Text2)
End If
End Sub

Botn salir:
Private Sub Command3_Click()
Unload Me
End
End Sub

Cdigo para el formulario:
Private Sub Form_Load()
Combo1.AddItem "Dividir"
27

Combo1.AddItem "Multiplicar"
Combo1.AddItem "Restar"
Combo1.AddItem "Sumar"
End Sub


Private Sub Command1_Click()
Text4 = Text1 & " " & Text2 & " " & Text3
End Sub
Botn nuevos datos:
Private Sub Command2_Click()
Text1 = ""
Text2 = ""
Text3 = ""
Text4 = ""
Text1.SetFocus
End Sub
Botn salir:
Private Sub Command3_Click()
Unload Me
End
End Sub


28

Programa grfico

Private Sub Label1_Click()
Label1.Caption = "Mi Pollito"
End Sub

Private Sub Label2_Click()
Label2.Caption = "El Pap"
End Sub

Private Sub Label3_Click()
Label3.Caption = "Mi Pap y Mi Pap"
End Sub

Relacin de Imgenes
Inserta 3 labels y un Image; elige el evento Click para las labels 2 y 3escribe el siguiente
cdigo:
Private Sub Label2_Click()
Image1.Picture = LoadPicture("c:\Jesus.jpg")
End Sub

Private Sub Label3_Click()
Image1.Picture = LoadPicture("c:\Jesus2.jpg")
End Sub
29



30

UNIDAD 3.
Elementos del lenguaje.
Un programa est constituido por variables que contienen datos sobre los que se
trabaja y por sentencias que operan sobre estos datos. Algunos aspectos a tener
en cuenta a la hora de escribir sentencias de programacin en Visual Basic son:
Comentarios
Sentencias
Variables
Opreadores
Comentarios. En Visual Basic, todo lo contenido en una sentencia a la derecha
del carcter comilla simple (`) en una lnea es un comentario y no es tenido en
cuenta. Los comentarios son muy tiles para facilitar la comprensin del cdigo
utilizado sobre todo en proyectos complejos donde resulta imprescindibles para
revisiones posteriores del cdigo.
Sentencias en ms de una lnea. En ocasiones las sentencias son complejas y
es necesario escribirlas en ms de una lnea para que entren en la pantalla, para
ello hay que dejar un espacio en blanco al final de la lnea y escribir el carcter
guin inferior (_)
Ej.) lblEtiqueta.Caption = "Esta es una etiqueta de descripcin de " _
"un ejemplo de una sentencia en dos lneas"

Varias Sentencias en una sola lnea. Para escribir varias sentencias en una sola
lnea es necesario escribir dos puntos (:) entre sentencia y sentencia.

Ej.) a= 7: b= 87:
Variables y Tipos de Datos.
31

Los programas usan variables, para guardar valores temporalmente, as se puede
entender una variable como una entidad que permite almacenar valores
temporalmente durante la ejecucin de una aplicacin. Posee dos partes, un
nombre o identificador y un valor que ser su contenido.
Los tipos de datos bsicos que se pueden almacenar en una variable son los
siguientes:

Tipos Numricos
Se usan para representar cantidades numricas enteras (integer y long) y
decimales (single y double).
Integer: Nmero entero que oscila entre los valores -32.768 y 32.767
Long: Nmero entero (entero largo) que oscila entre los valores -2.147.483.648 y
2.147.483.647
Simple: Nmero real que oscila entre los valores -3.40E+38 y 3.40E+38
Double: Nmero real que oscila entre los valores -1.8E+308 y 1.8E+308
Tipo Byte.
Representa una cantidad entre 0 y 255 y se pueden hacer con el las mismas
operaciones que con los enteros, salvo la resta.
Tipo String
Se usa para representar cadenas de caracteres, sirve para almacenar textos,
aproximadamente hasta 65000 caracteres.
Tipo Bolean.
Permite representar valores del tipo True/False.
32

Tipo Date.
Se usa para representar Fechas
Tipo Currency.
Es un formato de representacin en coma fija, se usa para representar valores
decimales que tengan a lo sumo 15 dgitos de parte entera y cuatro de parte
decimal.
Declaracin y mbito de las variables.
Declarar una variable consiste en avisar al programa de la existencia de la misma,
dndola un nombre y un tipo. La declaracin de variables es aconsejable pero no
obligatoria salvo que se fuerce a Visual Basic a declarar todas las variables
mediante la sentencia Option Explicit al principio de cada mdulo.

Las variables tienen un mbito que delimita las partes del programa desde donde
se pueden usar, as hay variables de tipo local y variables de tipo global.

Las variables locales son aquellas que estn definidas dentro de un procedimiento
o funcin y slo son accesibles en ese procedimiento o funcin donde se
definieron, as una variable local es reinicializada cada vez que se entra en el
procedimiento.

Las variables de tipo global son aquellas que son accesibles desde cualquier parte
del programa. Para hacer que una variable sea global, hay que declararla en la
parte general de un mdulo *.bas o de un formulario de la aplicacin usando la
palabra Public. Para acceder a las variables definidas como pblicas en un
formulario hay que especificar el formulario en el que fueron creadas pero si se
definen en un mdulo no es necesario, basta con el nombre para hacer uso de
ellas.
33

La declaracin de variables se realiza de la siguiente forma:

[Dim / Static / Private / Public ] nombreVariable as Tipo.
Ej:
Dim Letra as String
Static Permanente as Integer
Public Valor as Integer
Private Logico as Boolean

Si se usa la declaracin Static, entonces la variable conserva su valor mientras se
est ejecutando el resto del cdigo. Por ejemplo, si en el evento click de un botn
escribimos:
Private Sub Boton_Click()
Static Acumulado
Acumulado = Acumulado + 7
MsgBox Acumulado
End Sub
Con el cdigo del ejemplo anterior, en tiempo de ejecucin al pulsar el botn por
primera vez aparece un mensaje con el valor 7, si se vuelve a pulsar el botn, el
mensaje ser 14, si se vuelve a pulsar ser 21, y as se ir incrementando en
sucesivas ocasiones que se pulse el botn, es decir, la variable declarada como
Static va conservando su valor al entrar en el procedimiento sin inicializarlo a cero
como ocurrira si se hubiese declarado con Dim en cuyo caso el mensaje sera
siempre 7.
Nota: Si queremos usar variables del sistema como Date o Time que contienen la
fecha y hora del sistema respectivamente, no es necesario que las declaremos.
Las restricciones para poner el nombre a una variable son las siguientes:

1.-Debe empezar por una letra
34

2.-No puede tener ms de 255 caracteres
3.-El nombre debe ser nico en su campo de visibilidad (procedimiento, mdulo,
etc.)
4.- No puede ser una palabra reservada.

Operadores.
En la siguiente tabla se representan operadores soportados por Visual Basic,
usados para la realizacin de operaciones aritmticas, lgicas, relacionales, etc.

Sentencias de Control
Las sentencias o estructuras de control, permiten tomar decisiones y realizar un
proceso en repetidas veces. Son las denominadas bifurcaciones y bucles. Estas
estructuras son muy importantes puesto que son las encargadas de controlar el
flujo de un programa segn los requerimientos del mismo. En Visual Basic se
dispone de las siguientes:

35

Sentencia IF....THEN.....ELSE....END IF

Permite ejecutar condicionalmente una o ms sentencias. Su representacin es
as:

En la representacin anterior, si se cumple la primera condicin, es decir
condicion1 = True, entonces el programa continua su ejecucin por el Grupo1 de
Sentencias, si no se cumple, pasa a evaluar condicion2, y si es cierta se ejecuta el
Grupo 2 de Sentencias y si es falsa evala condicion3 y as se contina hasta el
encontrar un Else If (puede haber tantos como se precisen) que contenga una
condicin verdadera para ejecutar su grupo de sentencias. Si ninguna condicin
de las evaluadas es cierta, se ejecuta el Grupo de Sentencias de la clusula Else.

En esta sentencia de control las nicas clusulas obligatorias son If Then
pudindose prescindir si es necesario de Else, Else If Then y End If. A
continuacin veremos varias formas de escribir esta sentencia.
Ej.
If X<> 0 Then a =10/X Sentencia en una sola lnea, usando If Then

If X<> 0 Then
A=10/X
End If Sentencia en varias lneas, es necesario usar End If
36


If X<>0 Then
A=10/X
A = 0
End If Sentencia en varias lneas usando Else y End If

If x< 0 then
A = 10/x
Msgbox A es negativo
Else If x>0 Then
A = 10/x
Msgbox A es positivo
Else
A = 0
End If sentencia en varias lneas usando Else If, y End Id

Ejemplos:

Private Sub Command1_Click()
Form1.WindowState = 1
Timer1.Enabled = True
End Sub
Botn salir:
Private Sub Command2_Click()
Unload Me
End
End Sub
37

El reloj:
Private Sub Timer1_Timer()
Dim horas As String
hora = Format(Time, "hh:mm")
If hora = Text1.Text Then
Beep
MsgBox Text2.Text, vbOKOnly + vbInformation, "Aviso de la Alarma"
Timer1.Enabled = False
Form1.WindowState = 0
End If
End Sub

Botn convertir:
Private Sub Command1_Click()
If Option1 = True Then
Text2 = Val(Text1) * 1000
ElseIf Option2 = True Then
Text2 = Val(Text1) * 100
ElseIf Option3 = True Then
Text2 = Val(Text1) * 10
ElseIf Option4 = True Then
Text2 = Val(Text1) / 1000
End If
End Sub
Botn Nuevo clculo:
Private Sub Command2_Click()
Text1 = ""
Text2 = ""
Text1.SetFocus
End Sub
Botn salir:
38

Private Sub Command3_Click()
Unload Me
End
End Sub







Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
End If
End Sub

Private Sub Text2_GotFocus()
Text2.Text = Format(Now, "dd-mm-yyyy")
Text3.SetFocus
End Sub
Botn salir:
Private Sub Command1_Click()
Unload Me
End
39

End Sub
Botn limpiar:
Private Sub Command2_Click()
Text1 = ""
Text2 = ""
Text3 = ""
Text4 = ""
Text5 = ""
Text6 = ""
Text1.SetFocus
End Sub
Botn mostrar datos:
Private Sub Command3_Click()
Text7 = Text1 & " " & Text3
Text8 = Text4
Text9 = Text5
End Sub





Recuerda: debes colocar un objeto imagen

Private Sub Timer1_Timer()
Static a As Integer
a = a + 1
If a = 5 Then
Image1.Picture = LoadPicture("c:\Foto_Bolo.jpg")
End If
If a = 25 Then
Image1.Picture = LoadPicture("c:\\matrix_reloaded28.bmp")
End If
If a = 35 Then
40

Image1.Picture = LoadPicture("c:\matrix_xp_800.bmp")
End If
If a = 45 Then
Image1.Picture = LoadPicture("c:\matrixreloaded800*600.bmp")
End If
If a = 55 Then
a = 0
End If
End Sub

Se requiere un programa que permita validar el ingreso al sistema de dos usuarios, estos
deben escribir su Nombre de usuario y su Contrasea (mximo 6 caracteres). Si ambos
datos son correctos entonces aparece en una ventana de mensajes BIEVENIDO AL
SISTEMA, en caso contrario el mensaje debe decir ACCESO DENEGADO

Solucin

I. Dibujo de la interfaz













II. Valor inicial de las propiedades


Control: Formulario

Propiedad Valor
Nombre Form1
Caption Validacin de usuarios
Height 2535
Width 4200


Control: Text1 (Textbox para ingresar el usuario)

Propiedad Valor
Nombre txtUsuario
Text
41


Control: Text2 (Textbox para ingresar la contrasea)

Propiedad Valor
Nombre txtPassword
Text
PasswordChar *
MaxLength 6


Control: Command1 (Botn Ingresar)

Propiedad Valor
Nombre cmdIngresar
Caption Ingresar

III. Cdigo

Private Sub cmdIngresar_Click()

usuario = txtUsuario.Text
pwd = txtPassword.Text

If usuario = "Pepe" and pwd = "123456" Then
MsgBox "BIENVENIDO AL SISTEMA"
ElseIf usuario = "Juana" And pwd = "xls423" Then
MsgBox "BIENVENIDO AL SISTEMA"
Else
MsgBox "ACCESO DENEGADO"
End If

End Sub

Sentencia SELECT CASE: Permite ejecutar una de entre varias acciones en
funcin del valor de una expresin. Su representacin general es la siguiente:
42


En la representacin anterior expresion es una expresin numrica o
alfanumrica y etiqueta1, etiqueta2, etc., puede adoptar las formas siguientes:
1.- expresion, expresion,...., expresion (de 1 a n veces)
2.- expresion To expresion
3.- Is operador de relacin expresion
4.- combinacin de las anteriores separadas por comas.
En el siguiente ejemplo se muestra una sentencia Select Case en la que se usan
las cuatro formas anteriores.
Numero = 7
Select Case Numero
Case 1 To 5
Msgbox El resultado es un valor entre 1 y 5
Case 6
Msgbox El resultado es 6
Case 7,8
Msgbox El resultado es un 7 o un 8
Case Is=9, Is=10
Msgbox El resultado es un 9 o 10
Case 10 To 15, 16, Is=17
Msgbox El resultado es superior a 10 e inferior a 17
Case Else
Msgbox El resultado no est entre 1 y 17

Otro ejemplo:
43


Private Sub Command1_Click()
Select Case Text2.Text
Case "a", "A"
MsgBox "Aguila"
Case "b", "B"
MsgBox "burro"
Case Else
MsgBox "No existe"
End Select
End Sub
Se requiere un programa que permita el ingreso de un calificativo numrico, al hacer clic
en el botn convertir debe aparecer, en una etiqueta, el calificativo nominal segn la
siguiente tabla:

Calificativo numrico Calificativo nominal
Menor que 11 Deficiente
Mayor o igual que 11 y menor que 16 Regular
Mayor o igual que 16 Bueno

En este caso ser necesario evaluar al menos 2 condiciones para que el
programa cumpla con todos los requerimientos.
El dibujo de la interfaz y el valor inicial de la propiedades sern idnticos a los
del ejemplo de la separata 2.
Con la finalidad de simplificar el cdigo haremos uso de una variable llamada
nota

Solucin 1, haciendo uso de ElseIf:

Private Sub cmdConvertir_Click()

nota = Val(txtnumeros.Text)

44

If nota < 11 Then
lblletras.Caption = "Deficiente"
ElseIf nota >= 11 and nota < 16 Then
lblletras.Caption = "Regular"
Else
lblletras.Caption = "Bueno"
End If

End Sub

Solucin 2, haciendo uso de Select Case:

Private Sub cmdConvertir_Click()

nota = Val(txtnumeros.Text)

Select Case nota
Case Is < 11
lblletras.Caption = "Deficiente"
Case Is < 16
lblletras.Caption = "Regular"
Case Else
lblletras.Caption = "Bueno"
End Select

End Sub

Sentencia FOR.....NEXT: La sentencia For da lugar a un bucle, y permite ejecutar
un nmero de sentencias un cierto nmero de veces. Su forma general es:

Este tipo de bucles se usan principalmente para recorrer un rango discreto de
valores. Estos bucles son especialmente tiles para recorrer matrices. El
funcionamiento es el siguiente: primero se asigna el valor de la expresion1 a la
variable y se comprueba si su valor es mayor o menor que expresion2. En caso de
ser menor se ejecutan las Sentencias y una vez ejecutadas la variable se
incrementa en el valor de expresion3 o en 1 si no hay Step, volvindose a efectuar
la comparacin entre la variable y la expresion2 y as sucesivamente hasta que el
valor de la variable es mayor que expresion2 y en ese caso se sale del bucle.
45


Todo lo anterior se produce en el caso de ser expresion3 un valor positivo, si fuera
negativo las sentencias se ejecutan cuando el valor de la variable es mayor que el
de expresion2 y despus de cada ejecucin se decrementa (disminuye)su valor
segn lo especificado en expresion3.
Ejemplos:

Ojo en la caja de texto#2 debes poner true en la propiedad multiline
Botn ver tabla:
Private Sub Command1_Click()
Dim res As Long, retorno
For n = 1 To 10
res = Text1 * n
retorno = Chr(13) & Chr(10)
Text2 = Text2 & Text1 & " x " & n & " = " & res & retorno
Next n
End Sub
Botn nueva tabla:
Private Sub Command2_Click()
Text1 = ""
Text2 = ""
Text1.SetFocus
End Sub
Botn salir:
Private Sub Command3_Click()
46

If MsgBox("Por Favor Confirma Si Ya Te Quieres Ir", vbYesNo, "Qu Ya Te
Quieres Ir?") = vbYes Then
End
Else
Cancel = 1
End If
End Sub

Colores RGB
La Figura muestra el formulario y los controles del proyecto Colores. Los ficheros
de este proyecto se pueden llamar Colores.vbp y Colores.frm.
En este ejemplo se dispone de tres barras de desplazamiento con las que pueden
controlarse las componentes RGB del color del fondo y del color del texto de un
control label. Dos botones de opcin permiten determinar si los valores de las
barras se aplican al fondo o al texto. Cuando se cambia del texto al fondo o
viceversa los valores de las barras de desplazamiento (y la posicin de los
cursores) cambian de modo.
A la dcha. de las barras de desplazamiento tres cajas de texto contienen los
valores numricos de los tres colores (entre 0 y 255). A la izda. Tres labels indican
los colores de las tres barras.






47


Una caracterstica importante de este ejemplo es que se han utilizado vectores
(arrays) de controles. Las tres barras se llaman hsbColor y se diferencian por la
propiedad Index, que toma los valores 0, 1 y 2. Tambin las tres cajas de texto,
las tres labels y los dos botones de opcin son arrays de controles. Para crear
un array de controles basta crear el primero de ellos y luego hacer Copy y Paste
tantas veces como se desee, respondiendo afirmativamente al cuadro de dilogo
que pregunta si desea crear un array.
El procedimiento Sub que contiene el cdigo que gestiona un evento de un array
es nico para todo el array, y recibe como argumento la propiedad Index. De este
modo que se puede saber exactamente en qu control del array se ha producido
el evento. As pues, una ventaja de los arrays de controles es que pueden
compartir el cdigo de los eventos y permitir un tratamiento conjunto por medio de
bucles for. A continuacin se muestra el cdigo correspondiente a los
procedimientos que tratan los eventos de este ejemplo.
Option Explicit
Public Brojo, Bverde, Bazul As Integer
Public Frojo, Fverde, Fazul As Integer
Private Sub cmdSalir_Click()
End
End Sub
Private Sub Form_Load()
48

Brojo = 0
Bverde = 0
Bazul = 0
Frojo = 255
Fverde = 255
Fazul = 255
lblCuadro.BackColor = RGB(Brojo, Bverde, Bazul)
lblCuadro.ForeColor = RGB(Frojo, Fverde, Fazul)
End Sub
Private Sub hsbColor_Change(Index As Integer)
If optColor(0).Value = True Then
lblCuadro.BackColor = RGB(hsbColor(0).Value, hsbColor(1).Value, _
hsbColor(2).Value)
Dim i As Integer
For i = 0 To 2
txtColor(i).Text = hsbColor(i).Value
Next i
Else
lblCuadro.ForeColor = RGB(hsbColor(0).Value, hsbColor(1).Value, _
hsbColor(2).Value)
For i = 0 To 2
txtColor(i).Text = hsbColor(i).Value
Next i
End If
End Sub
Private Sub optColor_Click(Index As Integer)
If Index = 0 Then Se pasa a cambiar el fondo
Frojo = hsbColor(0).Value
Fverde = hsbColor(1).Value
Fazul = hsbColor(2).Value
hsbColor(0).Value = Brojo
hsbColor(1).Value = Bverde
hsbColor(2).Value = Bazul
Else Se pasa a cambiar el texto
Brojo = hsbColor(0).Value
Bverde = hsbColor(1).Value
Bazul = hsbColor(2).Value
hsbColor(0).Value = Frojo
hsbColor(1).Value = Fverde
hsbColor(2).Value = Fazul
End If
End Sub
49

Sentencia DO...WHILE... LOOP
Este bucle repite la ejecucin de un conjunto de sentencias mientras una
condicin dada sea cierta La condicion puede ser evaluada antes o despus de
ejecutarse el conjunto de sentencias. Sus posibles formas son:

En esta primera forma si condicin es True se ejecuta el grupo de sentencias y se
sigue ejecutando hasta que condicin sea False. La evaluacin de la condicin se
realiza antes de ejecutar las sentencias, por tanto el rango posible de veces que
se ejecutan estas ser de 0 a n, es decir, puede que el bucle no llegue a
ejecutarse nunca.


En esta segunda forma, primero se ejecuta una vez el grupo de sentencias y luego
se va evaluando condicin, repitindose la ejecucin de las sentencias mientras
sea True, por tanto con esta forma el bucle al menos se ejecuta una vez, es decir
su rango ser de 1 a n.

50


Dim entrada
entrada = ""
DO WHILE (entrada <> "migue")
entrada = inputbox ("Dime el nombre del autor","seguridad","migue",2,3)
if (entrada = "out") then
msgbox "salgo por la puerta de atras"
exit do
end if
LOOP

51

Sentencia DO... UNTIL... LOOP
Repite la ejecucin de un conjunto de sentencias hasta que una condicin dada
sea cierta, es decir a diferencia de While, el bucle se repite mientras la condicin
sea falsa y se sale del mismo cuando es verdadera.
Tiene dos formas generales:

En esta primera forma si condicin es False se ejecuta el grupo de sentencias y se
sigue ejecutando hasta que condicion sea True. La evaluacin de la condicin se
realiza antes de ejecutar las sentencias, por tanto el rango posible de veces que
se ejecutan estas ser de 0 a n, es decir, puede que el bucle no llegue a
ejecutarse nunca.

En esta segunda forma, primero se ejecuta una vez el grupo de sentencias y luego
se va evaluando condicin, repitindose la ejecucin de las sentencias mientras
sea False, por tanto con esta forma el bucle al menos se ejecuta una vez, es decir
su rango ser de 1 a n.
Ejemplo:

Este bucle no se ejecutar nuca
Dim Nmero as Integer
Dim Contador as Integer
Numero = 700
Do Until Numero > 100
Numero = Numero + 5
Contador = Contador + 1
Loop
Msgbox Contador

52

Este bucle se ejecutar una vez
Dim Nmero as Integer
Dim Contador as Integer
Numero = 700
Do
Numero = Numero + 5
Contador = Contador + 1
Loop Until Numero > 100
Msgbox Contador

Este bucle se ejecutar varias veces
Dim Nmero as Integer
Dim Contador as Integer
Numero = 60
Do Until Numero > 100
Numero = Numero + 5
Contador = Contador + 1
Loop
Msgbox Contador


Prueba el siguiente cdigo
option explicit
dim cont
dim respuesta
cont = 0
DO
cont = cont +1
respuesta = msgbox (cont,69,"Variable del bucle, con valor 6 se sale")
if (respuesta = 2) then
msgbox "Cuenta Cancelada",16,"Cancelaste!"
exit do
end if
LOOP UNTIL (cont = 6)
Nota. En los bucles For, Until, While es posible establecer una salida del bucle al
margen de las dadas en las condiciones para recorrer el mismo, esto se hace con
la sentencias Exit For, Exit Do.
53


Bibliografa
Manual de referencia Visual Basic 6.0, McGraw Hill
Francisco Javier Ceballos Sierra. Visual Basic: curso de programacin : 1997
Juan Diego Gutirrez Gallardo. Visual Basic: 1996
Enlaces en la Web:
http://www.mailxmail.com/curso-visual-basic-6-introduccion
http://www.programacion.com/tutorial/introprog/
http://ar.geocities.com/luis_pirir/cursos/sentrep.htm
http://www.larevistainformatica.com/tipo-lenguaje-programacion.htm
http://nayar.uan.mx/~iavalos/introprog.htm

S-ar putea să vă placă și