Está en la página 1de 30

Unidad N 1

PROGRAMACIN ESTRUCTURADA
Los pasos a seguir para realizar un programa son los siguientes: Anlisis del problema Algoritmo Codificacin

Anlisis del problema


Esta es la primera parte y la ms importante en la resolucin. Si el anlisis del problema no se realiza adecuadamente todos los pasos siguientes tambin estarn mal encaminados. Hay que definir cuales son los datos de entrada (Ej.: Se ingresan dos nmeros...), cual es el proceso (Ej.: ...obtener la suma...) y cuales son los datos de salida (Ej.: ... imprimir el resultado de la suma.).

Algoritmos
Un algoritmo es la representacin convencional de la resolucin de un problema de programacin. Es un mtodo de resolucin que no depende del lenguaje de programacin, pero que tiene que ser comprendido por cualquier programador.
C

Las herramientas que se utilizan para representar algoritmos son: diagramas


E SI

COMIENZO A A> 0 NO R= NO R FIN R= SI SI

A> 0

NO

R= SI S

R= NO

pseudo cdigo
F

Comienzo Leer A Si A>0 entonces R= SI Sino R= NO Fin si Mostrar R Fin

En el momento de representar la informacin que se obtuvo en el anlisis del problema se elige diagramas o pseudo cdigo o en algunos casos para una mejor orientacin se utilizan ambos. El algoritmo debe poseer tres partes bien ordenadas : Entrada de datos Proceso Salida de datos Estas caractersticas se respetan para que el algoritmo pueda ser comprendido por cualquier programador en forma universal

Codificacin
La codificacin se realiza a travs de un lenguaje de programacin Existen dos tipos: lenguajes de alto nivel y de bajo nivel. En este espacio nos dedicaremos mas adelante a un lenguaje de alto nivel que se llama VISUAL BASIC. Los lenguajes de programacin interpretan lo que el programador pretende para luego transformarlo en cdigo de maquina. El proceso es el siguiente: el programador escribe el cdigo segn el algoritmo preestablecido. Esta parte de la programacin se llama cdigo fuente:

Una vez terminado el cdigo fuente sin errores (la forma de corregir errores es depurando el programa) se hace un compilacin definitiva (definitiva porque mientras se escribe el cdigo fuente se van haciendo compilaciones parciales para poder ir depurando el programa) transformando el programa en un archivo ejecutable desde cualquier computadora que posea Windows como sistema operativo. Los programas de alto nivel no son entendibles directamente por la computadora. Estos necesitan ser traducidos a lenguaje de mquina (0 y 1) para que puedan ser interpretados. Los programas que realizan esta traduccin se llaman compiladores. El compilador traduce el cdigo fuente (cdigo del programador) a cdigo objeto (cdigo de mquina) El archivo ejecutable se llama cdigo objeto:

EL ENTORNO DE VISUAL BASIC


Creando un nuevo proyecto
Ni bien ejecutamos el programa, aparecer una pantalla similar a la figurar. All se nos pregunta si queremos crear un nuevo proyecto, abrir uno existente o abrir uno reciente (de los ltimos con los que trabajamos). Adems, en la, pestaa Nuevo existen distintos tipos de proyectos a crear. La opcin por defecto es .EXE, que es la que vamos a usar cliqueando sobre el botn ABRIR.

Otra forma alternativa para crear un nuevo proyecto es la siguiente: 1. Ir al men Archivo 2. Elegir la opcin Nuevo Proyecto 3. Seleccionar el tipo de proyecto a crear Despus de crear el proyecto, aparecer una ventana similar a la de la siguiente figura. Se pueden observar los principales componentes del entorno de Visual Basic.
Barra de Men Barra de Ttulo Barra de Herramientas

Formulario Explorador de proyectos

Ventana de propiedades Barra de Objetos

Barra de Ttulo

Es la barra horizontal situada en la parte superior de la pantalla, que es comn a todas las aplicaciones de Windows. En Visual Basic, la barra de ttulos informa el nombre del proyecto que tenemos abierto y el estado del mismo, es decir, si estamos en tiempo de diseo, de ejecucin, o en pausa.

Barra de menes
Por medio de esta barra se puede acceder a todas las funciones incorporadas en Visual Basic. En realidad, existen varios botones o teclas rpidas que eliminan la necesidad de recurrir a los menes para ciertas funciones, pero nunca esta dems prever este medio de acceso a la informacin.

Barra de herramientas
Mediante la barra de herramientas podemos acceder a funciones sin tener que utilizar el men o un atajo de teclado. Pueden observar todos los botones que incluye la barra de herramientas de Visual Basic.

La pgina de formularios es donde colocaremos todos los objetos para las interfaces grficas. La pagina de cdigo en donde se introducirn los comandos y las propiedades que se cambiaran en tiempo de ejecucin, tambin se colocan los eventos a los que tiene que reaccionar cada objeto.

Caja de herramientas o caja de objetos


La caja de herramientas contiene la mayora de los objetos que incluiremos en nuestros formularios. A continuacin se muestran todos los objetos que incluye.

Caja de imagen Etiqueta Marco Caja de Verificacin Caja Combinada

Caja de Imagen Cuadro de Texto Botn de comando

Botn de opcin
Lista

Barra de desplazamiento horizontal


Temporizador Caja de listado de directorios Figuras Control de imagen

Barra de desplazamiento vertical Listado de unidades


Listado de archivos Lnea Base de datos

Explorador de proyectos
Se utiliza para desplazarse por los formularios y mdulos de un proyecto. Es simplemente una ventana que nos permite acceder al cdigo de un modulo o formulario, o el diseo del mismo. Para cada modulo o formulario, en el explorador de proyecto aparecen dos nombres. El de la izquierda es el de la propiedad que se le dio al objeto, y el d la derecha es al nombre con que se guardo el objeto en el disco.

Ventana de propiedades
A travs de esta ventana podemos modificar todas las propiedades de los controles u objetos deseados en tiempo de diseo. Las propiedades tambin se pueden cambiar en tiempo de ejecucin.

PROGRAMACIN EN VISUAL BASIC


Primero debemos disear los formularios con los que va ha interactuar el usuario. Luego debemos agregar objetos a las formularios y definir las propiedades de cada uno. Por ultimo, debemos determinar los eventos a los que va a responder el programa y escribir el cdigo (Ej.: definir como va a responder un botn cuando el usuario haga un doble clic sobre l)

Estos pasos son muy importantes

Formularios
Los formularios son las ventanas mediante las cuales los usuarios interactan con la aplicacin. Lo primero que debemos hacer, al comenzar un nuevo proyecto, es definir todas las ventanas que formaran parte del programa, y luego determinar su apariencia (propiedades) y comportamiento (eventos). Por lo general se trabaja con los formularios en tiempo de diseo; es decir, ni bien se comienza a modelar el programa. En tiempo de ejecucin lo que se suele hacer es ocultar o redefinir el tamao de un formulario.

Controles
Los controles son todos los objetos que se incrustan en los formularios y mediante los cuales se realizan las acciones. Con ellos podemos escribir y recibir texto (etiquetas y cajas de texto), usar botones de comando, insertar o manipular imgenes, utilizar cuadros de dialogo y mucho ms.

Propiedades
Las propiedades son atributos que tienen los objetos. Todas tienen un valor que determina el estado de un objeto. En tiempo de diseo se establecen las propiedades que tendrn los objetos al iniciarse el programa y luego, en tiempo de ejecucin, se escribe el cdigo necesario para modificar los valores de las propiedades de los controles.

Mtodos
Los mtodos son funciones propias de cada objeto. As como las propiedades afectan lo que son los objetos, los mtodos influyen en lo que hacen los mismos. Afectan el comportamiento de los objetos en un programa, y solamente se los utiliza en tiempo de ejecucin (a diferencia de las propiedades, que tambin se pueden establecer en tiempo de diseo).

Eventos
Los eventos son sucesos a los que debe responder el programa. La mayora del cdigo que hay que escribir en Visual Basic se debe a procedimientos de sucesos (que definen cmo va a responder el programa ante un evento) y a funciones definidas por el usuario (que ayudan a los procedimientos de suceso a realizar un trabajo). En una aplicacin controlada por eventos, la ejecucin no sigue una ruta predeterminada, sino que ejecuta distintas secciones de cdigo como respuesta a eventos. Los eventos pueden desencadenarse por acciones del usuario, mensajes del sistema o de otras aplicaciones, o incluso desde la propia aplicacin. La secuencia de estos eventos determina la secuencia en la que se ejecuta el cdigo. Por tanto, la ruta a travs del cdigo de la aplicacin difiere cada vez que se ejecuta el programa.

Una parte esencial de la programacin controlada por eventos consiste en escribir cdigo que responda a los posibles eventos que pueden ocurrir en una aplicacin. Visual Basic facilita la implementacin de un modelo de programacin controlada por eventos.

Ubicando controles en los formularios


Para ubicar controles en los formularios, podemos seguir dos alternativas: 1. Hacer doble clic en el control deseado (situado en la caja de herramientas). En este caso, el objeto aparecer en el centro del formulario con un tamao especfico que se puede modificar fcilmente. 2. Hacer un clic sobre el control deseado y dibujarlo sobre el formulario.

Usar las propiedades y los mtodos de un objeto


Todos los objetos tienen propiedades y mtodos. Las propiedades son valores que se asigna para determinar la apariencia y el comportamiento del objeto. Los mtodos son procedimientos proporcionados por el objeto. Por ejemplo, un formulario proporciona un mtodo Show que hace que se muestre el formulario. La ventaja de trabajar con objetos es que proporcionan cdigo que no tendr que escribir. Con slo establecer las propiedades del objeto e invocar sus mtodos, el objeto realizar diversas funciones.

Establecer las Propiedades en tiempo de diseo


Algunas propiedades se pueden establecer en tiempo de diseo. Para ello, puede utilizar la ventana Propiedades o las pginas de propiedades. Para tener acceso a la ventana Propiedades, haga clic con el botn secundario del mouse (ratn) en un objeto y despus haga clic en Propiedades. La ventana Propiedades nicamente muestra las propiedades que son comunes a todos los controles seleccionados. Cualquier cambio que realice a una propiedad se aplicar a todos los controles. Tambin puede establecer propiedades para varios controles al mismo tiempo. Para seleccionar varios controles, haga clic y arrastre el mouse.

Establecer las propiedades en tiempo de ejecucin


En tiempo de ejecucin es posible escribir cdigo para establecer o modificar propiedades. En el siguiente ejemplo de cdigo se establece la fuente de tipo negrita para el cuadro de texto denominado txtdata: txtData.Font.Bold = True 'Pone texto en negrita. El siguiente ejemplo de cdigo establece la propiedad Text del cuadro de texto denominado txtdata: txtdata.Text = "Hola a todos" 'Establece el valor de texto.

Si omite el nombre de la propiedad establecer la propiedad predeterminada del control. La propiedad predeterminada de un cuadro de texto es Text La propiedad predeterminada de una etiqueta es Caption.

Ejercicio N 1 Realizar un programa que presionando un botn me permita copiar lo que hay en un cuadro de texto (T1) en otro (T2)

Propiedades de los formularios


AutoRedraw (redibujar automticamente): Esta propiedad tiene dos estados posibles- True (verdadero) o False (falso). Si es verdadera, se activa automticamente el redibujado de un grfico a la pantalla mediante informacin almacenada en la memoria. Si la propiedad es falsa (valor por omisin), Visual Basic invocara a un mtodo Paint cuando haya que redibujar un objeto. Boderstyle (estilo de borde): Esta propiedad establece el estilo del borde que tendr el formulario. Sus posibles valores son: 0- Sin borde 1- Borde fijo sencillo 2- Borde modificable 3- Borde fijo doble (se usa para cuadro de dilogos) 4- Borde fijo para ventanas de herramientas 5- Borde modificable para ventanas de herramientas Backcolor, Forecolor (color de fondo, color de frente): Estas dos propiedades se usan para elegir un color de fondo y otro de frente para el formulario (en otras palabras, el color de primer y segundo plano). Controlbox (cuadro de control): Si el valor de esta propiedad es True, el formulario tendr un cuadro de control (a la izquierda de la barra de ttulo, cerca del nombre de la ventana). Si es False, el formulario no poseer dicho cuadro de control. Font (fuente): Permite establecer la fuente tipogrfica a utilizar en un formulario. Maxbutton (botn de maximizar): Determina si un formulario posee botn de maximizar. Minbutton (botn de minimizar): Determina si un formulario posee botn de minimizar. Startupposition (posicin al inicio): Mediante esta propiedad, definimos la posicin que tendr un formulario al ejecutarse por primera vez. Soporta los siguientes valores: 0123Manual Centrado Centrado en pantalla Ubicacin por defecto (en el rincn superior izquierdo de la pantalla)
8

Windowstate (estado de ventana): Esta propiedad define el estado visual que tendr una ventana al ejecutarse. Acepta los siguientes valores: 0- Normal 1- Minimizada 2- Maximizada Name (nombre): Esta propiedad se utiliza solamente en la codificacin. Es el nombre que utiliza para hacer referencia al formulario. El valor por omisin es Forml. Appearance (Apariencia): Determina si el formulario (y controles del formulario) tendr apariencia tridimensional. Si se deja el valor por omisin que es 1, el formulario tendr una apariencia tridimensional. Si se cambia a 0, el formulario tendr aspecto plano (cada control tiene su propiedad de apariencia). Caption (ttulo): Define el titulo del formulario. Tambin es el ttulo que usa Windows para el icono de la aplicacin cuando el usuario lo minimiza. Enabled (activado): Esta propiedad es una de las que no hay que cambiar de manera fortuita. S se pone a False, el formulario no responder a ningn evento. Normalmente esta propiedad se cambia de True a False como respuesta a algn evento. Para hacer que los formularios respondan dinmicamente es preciso escribir cdigo. Height, Width (Alto, ancho): Define el alto y ancho de un formulario, puede ser variada tanto en tiempo de diseo como en tiempo de ejecucin. Icon (icono): Se utiliza con frecuencia. Determina el icono que mostrara su aplicacin cuando se minimice en la barra de herramientas, o en el escritorio de Windows cuando se convierta en una aplicacin independiente. Visual Basic esta dotado de una gran biblioteca de iconos que el usuario puede utilizar libremente. Left, Top (Izquierda, arriba): Determina la distancia entre la parte izquierda o superior del formulario y la pantalla. Si el valor de la propiedad Top es 0, el formulario que se esta diseando quedara a ras del borde superior. Si se asigna 0 a la propiedad Left el formulario estar pegado al borde izquierdo de la pantalla. Estos parmetros funcionan de la misma forma que las propiedades Height y Width (Alto y ancho). Mousepointer (puntero del ratn).- Establece la forma del puntero del ratn. El valor por omisin es 0, pero como indica la lista desplegable, hay otros 17 valores. Los valores que ms se emplean son el 11 y el 13. El valor 11- Hourglass cambia el puntero del ratn por un reloj de arena, y como en otras aplicaciones de Windows, se emplea para indicar al usuario que tiene que esperar hasta que la PC termine lo que esta haciendo. Visible (visible): Esta es otra de las propiedades que es peligroso cambiar por error. Si se asigna el valor a False a esta propiedad, el formulario no estar visible, normalmente solo se quiere hacer invisible un formulario cuando se esta diseando un aplicacin con varios formularios. Esta propiedad se utiliza por lo general en tiempo de ejecucin.

Muchas de estas propiedades son validas tambin para algunos objetos.


9

Top, Left, Height, Width, Enabled, Visible, Name son validas para todos los objetos.
Ejercicio N 2 Realizar un programa que presionando un botn me permita cambiar el color de fondo de un formulario. Ejercicio N 3 Realizar un programa que contenga tres botones. Al presionar cada uno deber cambiar el color de fondo del formulario. Ejercicio N 4 Realizar un programa que contenga cuatro botones. Al presionar cada uno deber cambiar el puntero del Mouse sobre el formulario.

La ventana de cdigo
Si se trabaja con ms de un formulario se tendr ms de una ventana de cdigo (corresponde una ventana de cdigo por cada formulario).
Caja de Objetos Caja de Eventos

LA caja de objeto tiene todos los objetos que aparecen en el formulario. La caja de eventos tiene todos los eventos del objeto seleccionado en la caja de objeto.
En Visual Basic trabajar con dos tipos de procedimientos dentro de la ventana de cdigo: procedimientos de evento y procedimientos generales. Procedimientos de evento: Visual Basic llama automticamente a los procedimientos de evento como respuesta a una accin del teclado, del rmouse o del sistema. Por ejemplo, los botones de comando tienen un procedimiento de evento Clic. Cualquiera que sea el cdigo colocado en un procedimiento de evento Clic, se ejecutar cuando el usuario haga clic en un botn de comando. Para abrir una ventana Cdigo, haga

10

doble clic en el control o en el formulario, o bien haga clic en el comando Cdigo del men Ver. Cada control posee un conjunto fijo de procedimientos de evento. Los procedimientos de evento para cada control aparecen en un cuadro de lista desplegable en la ventana Cdigo. El siguiente ejemplo de cdigo muestra el procedimiento de evento Click de un botn de comando llamado cmdOK: Private Sub cmdOK_Click() MsgBox "Hola" End Sub Procedimientos generales: Los procedimientos generales son procedimientos Sub o Function que se crean para realizar determinadas tareas. Para ejecutarlos, es necesario invocarlos explcitamente. Para crear un procedimiento general, abra una ventana Cdigo y haga clic en el comando Agregar procedimiento del men Herramientas. Tambin puede crear un procedimiento nuevo si escribe el encabezado Sub, seguido del nombre del procedimiento, en una lnea en blanco de la ventana Cdigo. Si tiene cdigo duplicado en varios procedimientos de evento, puede colocar el cdigo en un procedimiento general y despus llamar al procedimiento general desde los procedimientos de evento. Sub limpieza () Txtcuadro.text = End sub Call Limpieza Un sencillo ejemplo de un procedimiento que vaca el contenido de una caja de texto. Para llamar a los procedimientos se utiliza la palabra clave Call. Ejemplo de una funcin: Function Suma(Operandol As Integer,operando2 as Integer) As Integer Suma = Operandol + Operando2 End Function Dim Opl As Integer Dim Op2 As Integer Dim Resultado As Integer Opl = 2 Op2 = 9 Resultado = Suma (Op1, Op2) En este ejemplo vemos, primero, como se declaran las funciones y luego, como se las invoca (enviando los parmetros correspondientes).

CONTROLES ESTNDAR
Propiedades como Visible, Enabled, Name, Top, Left, Heigth, Width son comunes a los formulario y a todos los controles.

11

Botn de comando (propiedades)


Los botones de comando se usan para comenzar, interrumpir o detener procesos. Es el control mediante el cual los usuarios pueden realizar las funciones de una aplicacin (sin tener que acceder a ningn men). Picture, disabledpicture, downpicture (imagen, imagen inactiva, imagen pulsada): Establece la imagen a utilizar en un botn de comando de estilo grfico. Tambin se le pude asignar imgenes cuando el botn est inactivo o mientras se pulsa. Style (estilo): Determina el estilo del botn. Tiene dos valores posibles: 0 (valor por omisin) se usa para el estilo estndar y 1 para botones que incorporan grficos. Tabstop (aceptar foco): esta propiedad admite dos valores. Si es True significa que el usuario debe hacer foco en el control pulsando la tecla TAB. Si el valor es False, cuando los usuarios desplacen el foco con la tecla TAB, este no se detendr sobre este control.

Etiquetas (propiedades)
Las etiquetas se usan en Visual Basic para agregar un texto esttico. Esto significa que son tiles para mostrar leyendas, ttulos o presentar resultados. Los usuarios no pueden modificar la informacin que se presenta usando etiquetas (a diferencia de las cajas de texto). Alignment (alineacin): Esta propiedad tiene tres valores posibles., El valor por defecto es 0, con lo cual el texto estar justificado hacia la izquierda. El valor 1 justifica hacia la derecha, mientras que el 2 permite centrar el texto de la etiqueta. Autosize(tamao automtico): Con esta propiedad podemos ajustar automticamente el tamao del control segn el texto a desplegar. Tiene dos valores posibles: False o True. Wordwrap (enlace de texto): Con esta propiedad podemos prever que pasara cuando el texto de una etiqueta sea ms largo que el control. Si la propiedad est en True, el texto se enlazar y crecer en forma vertical. De lo contrario el tamao del control crecer horizontalmente hasta abarcar el texto.

Cajas de texto (propiedades)


Las cajas del texto se usan principalmente para ingresar datos en los programas. Tambin se pueden utilizar para mostrar resultados, aunque para eso es ms comn emplear etiquetas. Alignment (alineacin): Esta propiedad tiene tres valores posibles., El valor por defecto es 0, con lo cual el texto estar justificado hacia la izquierda. El valor 1 justifica hacia la derecha, mientras que el 2 permite centrar el texto. Maxlength (Longitud mxima): Esta propiedad establece el nmero mximo de caracteres que puede aceptar la caja de texto. El valor por defecto es 0, que significa que acepta la cantidad mxima de caracteres posibles. Cualquier otro valor establece el mximo de caracteres.

12

Multiline (lnea mltiple): Determina si la caja de texto puede soportar ms de una lnea. Esta propiedad se combina generalmente con Scrollbars para permitirles a los usuarios moverse fcilmente por este control. Los valores posibles son dos: True o False. Scrollbars (barras de desplazamiento): Con esta propiedad podemos determinar si una caja de texto posee barras de desplazamiento horizontales o verticales. Estas barras son muy tiles, ya que Visual Basic permite cajas de texto con Mltiples lneas y ayudan al usuario a moverse en dicho control. Passwordchar (caracteres especiales): Mediante esta propiedad podemos usar caracteres especiales para mostrar la informacin que se ingresa en la caja de texto. Text (texto): Controla el texto que el usuario ve o devuelve por medio de este objeto. Al crear una caja de texto en tiempo de diseo, podemos agregarle a Text el contenido que mostrara la caja (o borrar el valor original para no mostrar texto). En tiempo de ejecucin se suele llamar a esta propiedad para conocer el texto que el usuario ingreso o modifico de la caja de texto.

Caja de imagen (propiedades)


Estos controles se utilizan para mostrar grficos o como contenedores de otros objetos. Si el control no es lo suficientemente largo como para desplegar la imagen entera, lo corta y muestra solo lo mximo posible. Picture (imagen): Es la imagen propiamente dicha. Al hacer clic para modificar esta propiedad, Visual Basic abrir un cuadro de dialogo para navegar por el disco en busca del grfico a utilizar. Scalemode (modo de escala): Establece la unidad de medida para las coordenadas de un objeto, o para ubicar el control en el formulario. Tiene 8 valores posibles, cada uno de los cuales representa una unidad de medida distinta.

Marco (propiedades)
Los marcos se usan para agrupar fcilmente controles y hacer ms extensible una interfaz. Poseen varias propiedades similares a la de otros objetos (como por ejemplo: color, leyenda, etc.).

Cajas de verificacin (propiedades)


Estos controles se utilizan para establecer las opciones de un programa que pueden aceptar un valor Si/No (o activado/ desactivado). Son ideales para desplegar muchas opciones, siempre y cuando el usuario pueda elegir una o ms de ellas. Value (valor): Es la propiedad ms importante de este control, ya que determina el valor del mismo. Los valores posibles son los siguientes: O- Indica que la caja esta sin chequear 1- Indica que la caja se encuentra seleccionada 2- Indica que la caja de verificacin esta inaccesible

13

Botones de opcin (propiedades)


Este control se utiliza para agrupar un conjunto de opciones de las cuales solo podemos elegir una (a diferencia de las cajas de verificacin). Se pueden combinar cajas de verificacin con botones de opcin. Un buen ejemplo lo muestra el cuadro de dialogo Imprimir (Print) del men Archivo: Value (valor): Tiene dos valores posibles. True se usa para indicar si la opcin esta seleccionada, mientras que False establece todo lo contrario.

Cajas combinadas (propiedades)


Las cajas combinadas mezclan las cajas de listado (que veremos a continuacin) con las cajas de texto. La idea de este control es darle una lista con opciones, pudiendo introducirse nuevos valores. Listcount (contador de elementos): Esta propiedad devuelve el nmero de elementos de una caja combinada. Listindex (ndice del listado): El valor de esta propiedad refleja el nmero de ndice del valor seleccionado. Si no hay elemento seleccionado, el valor es -1; de lo contrario, ser el ndice actual. Sorted (orden): Se usa para indicar si los elementos de la caja combinada estn ordenados alfabticamente. Los valores posibles son True o False. Mtodos: Los mtodos ms utilizados para las cajas combinadas o las cajas de listado son additem (agregar un dato), removeitem (borrar un dato) y clear (borrar todos los datos). Se utilizan igual que las propiedades Ej.: combo1.additem hola

Cajas de listado (propiedades)


Este control se usa para mostrar una lista de opciones, de las cuales el usuario puede seleccionar una o mas, pero no ingresar su propio valor. Slyle (estilo): Determina el estilo del control. Si el valor es 0, se muestra una caja de listado estndar (valor por defecto). Si el valor es 1, se muestra una caja de listado con casillas de verificacin, mediante las cuales se puede seleccionar simultneamente varios elementos de la lista. Multiselect (multiseleccin): Controla si el usuario ha seleccionado ms de un elemento del listado. Tiene tres valores posibles: 0- No se permite multiseleccin 1- Se permite multiseleccin simple 2- Se permite multiseleccin extendida Ejercicio N 5 Realizar un programa que permita ingresar Nombre y Apellido de una persona en dos cuadros de texto. Al presionar un botn ver se pueda visualizar Nombre y Apellido en un cuadro de lista y Apellido y nombre en un cuadro combinado

14

Barras de desplazamiento (propiedades)


Las barras de desplazamiento se utilizan para obtener o mostrar datos cuando no se necesita saber el valor exacto del objeto, sino conocer si el cambio es chico o grande (por ejemplo se usan mucho para elegir colores de una paleta). Las barras de desplazamiento horizontal y vertical trabajan de la misma forma. Max (mximo): Es un nmero entero que define el valor mayo@ de una barra de desplazamiento. Mix (mnimo): Es el nmero que define el valor menor de una barra de desplazamiento. Value (valor): Indica la posicin actual de la barra de desplazamiento. Es el nmero entero que debe encontrarse dentro del rango segn Min y Max. Smallchange (cambio pequeo): Establece la forma en que cambia la propiedad Value en respuesta a los clics entre el dedo gordo y una de las flechas de desplazamiento.

Temporizadores (propiedades)
Mas conocidos como Timer este control se usa cuando se desea que el programa repita una accin cada cierto intervalo de tiempo. Enabled (activo): Esta propiedad indica si el temporizador debe comenzar a avanzar o no. Soporta dos valores: True o False. Interval (intervalo): Determina el tiempo que debe esperar Visual Basic parra generar el evento Timer. Se mide en milisegundos y si el intervalo es 0, se desactiva el temporizador.

Figuras (propiedades)
Las figuras son controles grficos que despliegan rectngulos, crculos, elipses y otras formas ms. Fillstyle (estilo de relleno): Establece en que estilo se va a llenar la figura. Soporta los siguientes valores: 01234567Slido Transparente Lneas horizontales Lneas verticales Diagonales ascendentes Diagonales descendentes Cuadriculado Cuadriculado diagonal

Shape (figura): Determina el tipo de figura a desplegar. Los valores que acepta esta propiedad son:

15

012345-

Rectngulo Cuadrado Ovalo Circulo Rectngulo redondeado Cuadrado redondeado

Lneas (propiedades)
Este control despliega lneas horizontales, verticales o diagonales. Boderstyle (estilo de borde): Determina el estilo de borde de la lnea. Los valores posibles son: 0123456Sin borde Slido Lnea rayada Lnea punteada Lnea con raya - punto Lnea con raya - punto - punto Slido por dentro (el lmite exterior del borde es el lmite exterior de la figura).

Borderwidth (ancho de borde): El valor de esta propiedad indica el ancho que tendr la lnea.

Control de imagen
Los controles de imgenes se utilizan para mostrar grficos. Stretch (estiramiento): Mediante esta propiedad podemos determinar si el grfico se estira para ajustarse al control o viceversa. Soporta dos valores: True (el grfico reajusta su tamao para adaptarse al control) o False (el control reajusta su tamao para adaptarse al grfico).

Eventos ms importantes
Evento Load Unload Clic Dblclic Gotfocus Lostfocus Keydown Keypress Keyup Mousemove Mousedown Mouseup Descripcin Se activa al cargar el formulario Se activa cuando se est por descargar un formulario Se activa cuando hacemos un clic de mouse sobre un objeto Se activa cuando presionamos dos veces el botn izquierdo del mouse Se activa cuando un objeto recibe el foco Se activa cuando un objeto pierde el foco Se activa mientras mantenemos presionada una tecla Se activa cuando presionamos una tecla Se activa al soltar una tecla Se activa cuando el usuario mueve el mouse Se activa mientras el usuario mantiene apretado el botn derecho del mouse Se activa al soltar el botn derecho del mouse

16

Qu ocurre cuando se ejecuta una aplicacin de Visual Basic?


Cuando el usuario ejecuta una aplicacin que se ha desarrollado con Visual Basic, suele ver el formulario inicial que haya diseado. Sin embargo, en segundo plano hay muchas ms cosas. Cuando Visual Basic abre un formulario, comprueba si ha creado un procedimiento de evento para inicializar el formulario. Este procedimiento se denomina Form_Initialize (inicializar formulario). La utilidad ms comn de este procedimiento es inicializar variables a nivel de formulario y cambiar los valores por omisin de los controles. El procedimiento Initialize (inicializar) ocurre antes que el procedimiento Form_Load (cargar formulario), que es el primer procedimiento que utilizaban las versiones anteriores de Visual Basic para la inicializacin. Algunas personas siguen prefiriendo utilizar el procedimiento Form_Load para configurar las propiedades iniciales de un formulario. En cualquier caso, debe encontrar ms fcil la configuracin de las propiedades del formulario y de sus controles mediante cdigo de una de estas dos formas en lugar de utilizando la ventana Propiedades. Como el procedimiento Form_Load es el procedimiento de evento por omisin, todo los que tiene que hacer es pulsar dos veces con el ratn en cualquier zona en blanco del formulario para abrir la plantilla del procedimiento de evento Form_Load. Tendr que seleccionar manualmente el procedimiento Initialize del cuadro Procedimiento de la ventana Cdigo para poder trabajar con l. Una vez que Visual Basic procesa el procedimiento Initialize llama al procedimiento load. Despus de esto, llama o otros cuatro procedimientos de eventos (si se ha creado el cdigo para ello). A continuacin se muestra el orden en que ocurren estos eventos: Procedimiento Form_Initialize Procedimiento Form_Load Procedimiento Form_Resize Procedimiento Form_Actvate Procedimiento Form_GotFocus (slo si no hay activado ningn botn del formulario). Procedimiento Form_Paint (slo si la propiedad AutoRedraw, dibujar automticamente, estudiada anteriormente, es False). Ejercicio N 6 Realizar un programa que permita ingresar Nombre y Apellido de una persona en dos cuadros de texto, se seleccione de un cuadro combinado la edad y de tres botones de opcin el estado civil (soltero casado viudo). Al presionar un boton (ver) que muestre en una lista todos los datos en un rengln.

17

Unidad N. 2
Editor de mens
En Visual Basic, puede crear mens utilizando la ventana Editor de mens disponible en el men Herramientas, Editor de mens. A continuacin se describen brevemente los elementos de este cuadro de dilogo mas importantes: Cuadro de texto Caption (ttulo): Lo que introduzca en el cuadro de texto Caption es lo que ver el usuario. El ttulo tambin se muestra en la zona de texto del cuadro de dilogo. A diferencia de otros controles de Visual Basic, los elementos de men no disponen ttulos por omisin. Las teclas de acceso al cuadro de texto Caption en la ventana Editor de Mens son ALT + P. Cuadro de texto Name (nombre): Cada elemento de un men debe tener un nombre de control. Lo que se introduzca en el cuadro de texto Name es el nombre de control que utilizar Visual Basic en el procedimiento de evento Click para el elemento de men. Visual Basic no permite cerrar el cuadro de dilogo Editor de Mens hasta que se haya asignado un nombre de control a cada elemento del men. Las teclas de acceso son ALT' + M. Botones Aceptar y Cancelar: Pulse el botn Aceptar cuando haya finalizado el diseo del men. Si decide no crear el men, pulse el botn Cancelar. Incluso despus de terminar de disear un men y haber pulsado el botn Aceptar, se puede volver a la ventana Editor de, mens para realizar modificaciones en el mismo. Cuadro Shortcut (abreviatura de teclado): Permite definir abreviaturas de teclado para acceder a los elementos del men.

Proyectos con varios formularios

18

A medida que sus aplicaciones vayan siendo ms complicadas, no desear estar restringido a aplicaciones limitadas a un nico formulario. El uso de varios formularios aade flexibilidad y potencia a las aplicaciones. Esto termina con los problemas de los controles que tapan el texto escrito en un formulario. Para aadir formularios adicionales a una aplicacin que se est diseando, abra el men Proyecto y seleccione Agregar formulario. La ventana Explorador de proyectos lista todos los formularios en orden alfabtico, con su nombre seguido por la extensin frm. Si los formularios no estn visibles, ample el rbol del Explorador de proyectos. Visual Basic guarda almacenado cada formulario en un archivo separado, y usa el archivo vbp (de proyecto) para anotar dnde se encuentran almacenados.

Cmo controlar varios formularios en tiempo de ejecucin


Cuando una aplicacin comienza a ejecutarse, Visual Basic muestra un nico formulario. ste se denomina formulario inicial. Los dems formularios de la aplicacin deben cargarse y presentarse explcitamente desde el cdigo. El formulario inicial es, normalmente, el formulario presentado cuando se comienza un proyecto nuevo. Si desea cambiarlo, seleccione Proyecto Propiedades de proyecto, y pulse la pgina General. Ahora slo tiene que seleccionar el formulario (mediante su nombre) en el cuadro de lista desplegable Objeto inicial.

Mtodos para formularios


En esta seccin se describen cuatro mtodos para manejar formularios. Usar constantemente estos mtodos cuando trabaje con aplicaciones que contienen varios formularios. Show (mostrar). Muestra el formulario en la pantalla. Para ello, Visual Basic comprueba primero que el formulario est cargado en la memoria. Si no lo est, lo carga. La sintaxis bsica del mtodo Show es NombreFormulario.Show El mtodo Show tambin sita el formulario en el primer plano del escritorio si estuviera tapado por otro. Load(cargar). Carga el formulario en la memoria, pero no lo presenta. Visual Basic carga tambin el formulario en la memoria siempre que se haga referencia a sus propiedades o controles en el cdigo. Por esto, la razn principal para cargar un formulario antes de mostrarlo es disminuir el tiempo de respuesta. A cambio, se emplea ms memoria. La sintaxis es Load NombreFormulario Cuando Visual Basic carga un formulario, restaura en todas las propiedades del mismo los valores definidos inicialmente al disearlo, y luego llama al procedimiento de evento Form-Load. Hide (ocultar). Retira el formulario de la pantalla, pero no lo descarga de la memoria. Los controles no estn al alcance del usuario, pero puede seguir haciendo referencia a ellos en el cdigo. Los valores de las variables a nivel de formulario no desaparecen. Igual que al cargar el formulario, la ocultacin del formulario aumenta la velocidad y consume memoria. La sintaxis es NombreFormulario.Hide Por ejemplo, para ocultar el formulario activo, puede usar la palabra reservada Me:

19

Me. Hide Unload (descargar). Borra el formulario de la memoria (tiene el mismo efecto que pulsar el botn de salida o pulsar dos veces en el cuadro de control). Se pierde toda la informacin contenida en sus variables a nivel de formulario. La sintaxis de esta orden es Unload NombreFormulario Ejercicio N 7 Idem anterior. Pero al presionar un boton (ver) que muestre en una lista de otro formulario todos los datos en un rengln. Ejercicio N 8 Realizar un programa que permita ingresar una temperatura en grados Celsius y convierta el nmero en grados Fahrenheit (la formula es Fahrenheit = (celsius * 9/5) + 32) y cuando ingrese una temperatura en grados Fahrenheit la pase a celsius (la formula es celsius = (Fahrenheit 32) * 5/9). El programa debe tener un men Archivo y Ayuda. Dentro de archivo una opcin que sea Salir y dentro de ayuda una opcin Acerca de... que muestre un formulario con una imagen y un comentario sobre el programa.

Variables
Las variables en programacin son como cajones donde se almacenan informacin. En realidad son lugares de memoria que el programa determina para su utilizacin. El tipo de variable depende de la informacin que voy a almacenar. Por ejemplo si la variable va a contener nmeros ser de tipo numrica (Integer) y las que almacenan texto sern alfanumricas (String).

Ejemplos de variable numrica: A


12345 A= 12345 La variable A contiene nmero 12345

Contenido de la variable Nombre de la variable

Ejemplos de variables alfanumricas:


A A1 Fecha Hola %$^&#@ 11-12-2001 A= Hola La variable A contiene a Hola La variable A1 contiene a %$^&#@

A1= %$^&#@

Fecha= 11-12-2001 La variable Fecha contiene a 1112-2001

Hay que observar:


20

El contenido de las variables alfanumricas se escribe entre comillas porque se refiere a texto. En programacin todo lo que esta entre comillas es texto y se pone de esta forma para que se diferencie de los nombres de las variables Los nmeros pasan a ser contenidos alfanumricos si se encuentran entre comillas. Ej. : La variable Fecha

En programacin no existe la igualdad de variables a pesar que se utiliza el signo =, el nombre correcto es asignacin, y significa que todo lo que est del lado derecho del signo igual pasa del lado izquierdo. Ej. : A= 12345
Asignacin

Definicin de variables
Las variables se definen al comienzo del programa para que el compilador prepare la memoria que se va a utilizar cuando este se ejecute. El nombre de las variables puede ser una cadena (texto) de no ms de 255 caracteres. La definicin en Visual BASIC se realiza de la siguiente forma: Dim a as String Significa dimensionar la variable a como variable de cadena (alfanumrica). Dim b as Integer Significa dimensionar la variable b como variable entera (numrica, o mejor dicho numero entero) Aparte de los tipos de variables String e Integer existen otros que mencionaremos a continuacin: Variant: este tipo de variables reemplaza a cualquier tipo de variables. Se utiliza habitualmente cuando no s que contenido va a tener la variable, pero tiene un defecto que ocupa mucho lugar en la memoria. Single: Se utiliza para los nmeros con siete dgitos de precisin, incluyendo los decimales. Double: Se utiliza para los nmeros con once dgitos de precisin, incluyendo decimales. Byte: Es un nmero entero chico (de 0 a 255) Long: Es un nmero entero largo (ms grande que 32.767 que es hasta donde llega Integer).

21

Boolean: Puede tomar solo los valores True (verdadero) y False (falso). Date: Se usa con variables que contienen fechas.

Un error tpico de utilizacin de es la siguiente sintaxis:


Dim X, Y, Z As Integer

Y suponer que se trata de tres variables enteras. De hecho en este ejemplo, por omisin X, Y son variantes y Z es una variable entera. La forma correcta seria:
Dim X As Integer, Y As Integer, Z As Integer

Cambio de tipo de variables


A pesar de haber declarado el tipo de las variables con la instruccin Dim, existe la posibilidad, a travs de Visual Basic, de cambiar su tipo de contenido para una representacin tanto visual (un cuadro de texto) como operativa (operacin matemtica). Para transformar una variable definida como Integer en una cadena para ser representada en un cuadro de texto de utiliza la instruccin Str. Dim A as Integer A= 123 Text1.text = Str(A) -Realiza la representacin visual de un nmero como cadena (texto)De la misma forma puedo transformar una variable definida como String en una variable de tipo numrica para una representacin matemtica a travs de la instruccin Var Ej. : Dim A as String Dim S as Integer Dim B as Integer A= 12 S = Var(A) + B -Realiza la representacin de una cadena en una operacin matemtica que tiene como resultado a SSi en el ejemplo anterior no se utilizaba la instruccin Var la suma era errnea porque se estaba operando con dos tipos de variables diferentes. En el caso de sumar dos variables del tipo String su resultado dar la unin de ambas cadenas. Ej. : A= hola B= chicos C= A + + B -El contenido de C ser hola chicos. Las comillas vacas entre los dos signos de suma significan un espacio entre palabrasEj. :

22

Niveles de definicin
Variables a nivel procedimiento:

Private Sub Botn_Click()


Dim A As String

A = Text1.Text Botn.Caption = A End Sub

El ejemplo muestra un cuadro de texto que permite ingresar el nombre del botn. Cada vez que hago click en el botn el texto escrito en el cuadro pasa a ser el nombre del botn Las variables que se utilizan de esta manera, como A, solo mantienen su contenido dentro del procedimiento Private Sub Botn_Click() en otro procedimiento no tendr ni definicin ni valor. Variables a nivel formulario:

Dim A As Integer

Private Sub Sumador_Click() A = A + 1 End Sub Private Sub Ver_Click() Text1.Text = Str(A) End Sub Este programa de ejemplo muestra un sumador que incrementa el valor de la variable A, que ser mostrada en el cuadro de texto cuando presione el botn ver. En realidad el cuadro de texto mostrara cuantas veces se hace click en botn sumador. Cuando la variable A se declara fuera de cualquier procedimiento conserva su contenido en todo el formulario. Por este motivo la variable A se incrementa en un procedimiento y se muestra en otro. Variables a nivel proyecto: Proyecto Form 1 Private Sub Pasar_Click() Unload Form1 Form2.Show End Sub Private Sub Sumador_Click()
23

A = A + 1 End Sub Form 2 Private Sub Ver_Click() Text1.Text = Str(A) End Sub

Mdulo

Este ejemplo es muy parecido al anterior pero el contador se realiza en un formulario (Form1) y la muestra en otro (Form2). La declaracin se realiza en un mdulo y se reemplaza la instruccin Dim por la instruccin Public. La declaracin de una variable en un mdulo significa que se mantiene su contenido en todo el proyecto o mejor dicho en todos los formularios del proyecto. El agregado de un mdulo se realiza de la misma forma que se agrega un formulario nuevo (Proyecto Agregar mdulo).

Estructuras de Control
Las estructuras de control le permiten controlar el flujo de ejecucin del programa. Tenemos dos tipos de estructuras de control: Estructuras de decisin Estructuras de bucle

Estructuras de Decisin
Los procedimientos de Visual Basic pueden probar condiciones y, dependiendo de los resultados, realizar diferentes operaciones. Entre las estructuras de decisin que acepta Visual Basic se incluyen las siguientes: If...Then If...Then...Else Select Case

24

If...Then Use la estructura If...Then para ejecutar una o ms instrucciones basadas en una condicin. Puede utilizar la sintaxis de una lnea o un bloque de varias lneas:

If condicin Then Sentencias If condicin Then Sentencias End If

Condicin normalmente es una comparacin, pero puede ser cualquier expresin que d como resultado un valor numrico. Visual Basic interpreta este valor como True o False; un valor numrico cero es False y se considera True cualquier valor numrico distinto de cero. Si condicin es True, Visual Basic ejecuta todas las sentencias que siguen a la palabra clave Then. Puede utilizar sintaxis de una lnea o de varias lneas para ejecutar una sentencia basada en una condicin, los siguientes ejemplos son equivalentes: If cualquierFecha < Now Then CualquierFecha = Now

If cualquierFecha < Now Then CualquierFecha = Now End If

Observe que el formato de una nica lnea de If...Then no utiliza la instruccin End If. Si se desea ejecutar ms de una lnea de cdigo cuando condicin sea True, debe utilizar la sintaxis de bloque de varias lneas If...Then...End If. If cualquierFecha < Now Then CualquierFecha = Now Timer1.Enabled = False End If

If

chkAlumnoUNI.Value=1 Then txtCosto = Format (txtCosto*0.70,Fixed) txtCdigo.Enabled = True End If

If...Then...Else Utilice un bloque If...The...Else para definir varios bloques de sentencias, uno de los cuales se ejecutar: If condicin1 Then [bloque de sentencias 1] [ElseIf condicin2 Then [bloque de sentencias 2]] ... [Else [bloque de sentencias n]] End If

25

Visual Basic evala primero condicin1. Si es False, Visual Basic procede a evaluar condicin2 y as sucesivamente, hasta que encuentre una condicin True. Cuando encuentra una condicin True, Visual Basic ejecuta el bloque de instrucciones correspondientes y despus ejecuta el cdigo que sigue a End If. Opcionalmente, puede incluir un bloque de instrucciones Else, que Visual Basic ejecutar sin ninguna de las condiciones es True. If...Then...ElseIf es un caso especial de If...Then...Else. Observe que puede tener cualquier nmero de clusula ElseIf o ninguna. Puede incluir una clusula Else sin tener en cuenta si tiene o no clusula ElseIf. Por ejemplo, la aplicacin podra realizar distintas acciones dependiendo del control en que se haya hecho clic de una matriz de controles de men: Private Sub mnuCut_Click (Index As Integer) If Index = 0 Then CopyActiveControl ClearActiveControl ElseIf Index = 1 Then CopyActiveControl ElseIf Index = 2 Then ClearActiveControl Else PasteActiveControl End If End Sub Observe que siempre puede agregar ms clusulas ElseIf a la estructura If...Then. Sin embargo, esta sintaxis puede resultar tediosa de escribir cuando cada ElseIf compara la misma expresin con un valor distinto. Para estas situaciones, puede utilizar la estructura de decisin Select Case. Select Case Visual Basic proporciona la estructura Select Case como alternativa a If...Then...Else para ejecutar selectivamente un bloque de sentencias entre varios bloques. La sentencia Select Case ofrece posibilidades similares a la instruccin If...Then...Else, pero hace que el cdigo sea ms legible cuando hay varias opciones. La estructura Select Case funciona con una nica expresin de prueba que se evala una vez solamente, al principio de la estructura. Visual Basic compara el resultado de esta expresin con los valores de cada Case de la estructura. Si hay una coincidencia, ejecuta el bloque de sentencias asociado a ese Case:

Select Case expresin_prueba [Case lista_expresiones1 [bloque de sentencias 1]] [Case lista_expresiones2 [bloque de sentencias 2]] . . . [Case Else [bloque de sentencias n]] End Select
26

Cada lista_expresiones es una lista de uno a ms valores. Si hay ms de un valor en una lista, se separan los valores con comas. Cada bloque de sentencias contiene cero o ms instrucciones. Si ms de un Case coincide con la expresin de prueba, slo se ejecutar el bloque de instrucciones asociado con la primera coincidencia. Visual Basic ejecuta las instrucciones de la clusula (opcional) Case Else si ningn valor de la lista de expresiones coincide con la expresin de prueba. Por ejemplo, suponga que agrega otro comando al men Edicin en el ejemplo If...Then...Else. Podra agregar otra clusula ElseIf o podra escribir la funcin con Select Case: Private Sub mnuCut_Click (Index As Integer) Select Case Index Case 0 CopyActiveControl ClearActiveControl Case 1 CopyActiveControl Case 2 ClearActiveControl Case 3 PasteActiveControl Case Else frmFind.Show End Select End Sub

Select Case TipoUsuario Case Supervisor ... ... Case Usuario ... ... Case Else ... ... End Select

Observe que la estructura Select Case evala una expresin cada vez que al principio de la estructura. Por el contrario, la estructura If...Then...Else puede evaluar una expresin diferente en cada sentencia ElseIf. Slo puede sustituir una estructura If...Then...Else con una estructura Select Case si la instruccin If y cada instruccin ElseIf evala la misma expresin.
27

Estructuras de Repeticin
Las estructuras de repeticin o bucle le permiten ejecutar una o ms lneas de cdigo repetidamente. Las estructuras de repeticin que acepta Visual Basic son: Do...Loop For...Next

Do...Loop Utilice el bucle Do para ejecutar un bloque de sentencias un nmero indefinido de veces. Hay algunas variantes en la sentencia Do...Loop, pero cada una evala una condicin numrica para determinar si contina la ejecucin. Como ocurre con If...Then, la condicin debe ser un valor o una expresin que d como resultado False (cero) o True (distinto de cero). En el siguiente ejemplo de Do...Loop, las sentencias se ejecutan siempre y cuando condicin sea True: Do While condicin Sentencias Loop Cuando Visual Basic ejecuta este bucle Do, primero evala condicin. Si condicin es False (cero), se salta todas las sentencias. Si es True (distinto de cero) Visual Basic ejecuta las sentencias, vuelve a la instruccin Do While y prueba la condicin de nuevo. Por tanto, el bucle se puede ejecutar cualquier nmero de veces, siempre y cuando condicin sea distinta de cero o True. Nunca se ejecutan las sentencias si condicin es False inicialmente. Otra variante de la instruccin Do...Loop ejecuta las sentencias primero y prueba la condicin despus de cada ejecucin. Esta variacin garantiza al menos una ejecucin de sentencias: Do Sentencias Loop While condicin Hay otras dos variantes anlogas a las dos anteriores, excepto en que repiten el bucle siempre y cuando condicin sea False en vez de True. Hace el bucle cero o ms veces Do Until condicin Sentencias Loop Hace el bucle al menos una vez Do Sentencias Loop Until condicin

28

For...Next Los bucles Do funcionan bien cuando no se sabe cuntas veces se necesitar ejecutar las sentencias del bucle. Sin embargo, cuando se sabe que se va a ejecutar las sentencias un nmero determinado de veces, es mejor elegir el bucle For...Next. A diferencia del bucle Do, el bucle For utiliza una variable llamada contador que incrementa o reduce su valor en cada repeticin del bucle. La sintaxis es la siguiente: For contador = iniciar To finalizar [Step incremento] Sentencias Next [contador] Los argumentos contador, iniciar, finalizar e incremento son todos numricos. Nota: El argumento incremento puede ser positivo o negativo. Si incremento es positivo, iniciar debe ser menor o igual que finalizar o no se ejecutarn las sentencias del bucle. Si incremento es negativo, iniciar debe ser mayor o igual que finalizar para que se ejecute el cuerpo del bucle. Si no se establece Step, el valor predeterminado de incremento es 1. Al ejecutar el bucle For, Visual Basic: 1. Establece contador al mismo valor que iniciar. 2. Comprueba si contador es mayor que finalizar. Si lo es, Visual Basic sale del bucle. (Si incremento es negativo, Visual Basic comprueba si contador es menor que finalizar.) 3. Ejecuta las sentencias. 4. Incrementa contador en 1 o en incremento, si se especific. 5. Repite los pasos 2 a 4. Este cdigo imprime los nombres de todas las fuentes de pantalla disponibles:

Private Sub Form-Click ( ) Dim I As Integer For i = 0 To Screen.FontCount Print Screen.Fonts (i) Next End Sub

Salida de una Estructura de Control


La instruccin Exit le permite salir directamente de un bucle For o de un bucle Do. La sintaxis de la sentencia Exit es sencilla: Exit For puede aparecer tantas veces como sea

29

necesario dentro de un bucle For necesario dentro de un bucle Do:

y Exit Do puede aparecer tantas veces como sea

For contador = iniciar To finalizar [Step incremento] [bloque sentencias] [Exit For] [bloque sentencias] Next [contador] Do [{While / Until} condicin] [bloque de sentencias] [Exit Do] [bloque de sentencias] Loop Do [bloque de sentencias] [Exit Do] [bloque de sentencias] Loop [{While / Until} condicin] Exit For y Exit Do son muy tiles ya que, algunas veces, resulta apropiado salir inmediatamente de un bucle sin realizar ms iteraciones o sentencias dentro del bucle. Cuando utilice la instruccin Exit para salir de un bucle, el valor de la variable contador difiere, dependiendo de cmo haya salido del bucle: Cuando termina un bucle, la variable contador contiene el valor del lmite superior ms el paso. Cuando sale de un bucle prematuramente, la variable contador conserva su valor segn las reglas usuales del alcance.

30

También podría gustarte