Está en la página 1de 53

VISUAL BASIC 6.0 ENTORNO DE PROGRAMACIN VISUAL BASIC 6.0 INTRODUCCIN: QU ES VISUAL BASIC 6.0?

Visual Basic 6.0 es una excelente herramienta de programacin que permite crear aplicaciones propias (programas) para Windows 95/98 o Windows NT. 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 termodinmica, simulacin de circuitos, etc. Este programa permite crear ventanas, botones, mens y cualquier otro elemento de Windows de una forma fcil e intuitiva. El lenguaje de programacin que se utilizar ser el Basic, que se describir en el siguiente captulo. A continuacin se presentarn algunos aspectos del entorno de trabajo de Visual Basic 6.0: mens, opciones, herramientas, propiedades, etc. EL ENTORNO DE PROGRAMACIN VISUAL BASIC 6.0 Cuando se arranca Visual Basic 6.0 aparece en la pantalla una configuracin similar a la mostrada en la pantalla de visual. 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>.

6. Ventana FormLayout, que permite determinar la forma en que se abrir la aplicacin cuando comience a ejecutarse (abajo a la derecha).

Tipos de datos Al igual que C y otros lenguajes de programacin, Visual Basic dispone de distintos tipos de datos, aplicables tanto para constantes como para variables. La Tabla 3.2 muestra los tipos de datos disponibles en Visual Basic. Tipo Descripcin Carcter de declaracin
TIPO BOOLEAN BYTE INTEGER LONG SINGLE DOUBLE CURRENCY STRING Variant DATE COMENTARIO Slo admite 2 valores TRUE o FALSE admite valores entre 0 y 255 admite valores entre -32768 y 32767 admite valores entre -2.147.483.648 y 2.147.483.647 admite valores decimales con precisin simple admite valores decimales de doble precisin vlido para valores de tipo moneda cadenas de caracteres Admite cualquier tipo de datos fechas, permite operar con ellas

Tipos de datos en Visual Basic 6.0. En el lenguaje Visual Basic 6.0 existen dos formas de agrupar varios valores bajo un mismo nombre. La primera de ellas son los arrays (vectores y matrices), que agrupan datos de tipo homogneo. La segunda son las estructuras, que agrupan informacin heterognea

o de distinto tipo. En Visual Basic 6.0 las estructuras son verdaderos tipos de datos definibles por el usuario. Para declarar las variables se utiliza la sentencia siguiente: Dim NombreVariable As TipoVariable cuyo empleo se muestra en los ejemplos siguientes: Dim Radio As Double, Superficie as Single Dim Nombre As String Dim Etiqueta As String * 10 Dim Francos As Currency Dim Longitud As Long, X As Currency Es importante evitar declaraciones del tipo: Dim i, j As Integer pues contra lo que podra parecer a simple vista no se crean dos variables Integer, sino una Integer (j) y otra Variant (i). En Visual Basic 6.0 no es estrictamente necesario declarar todas las variables que se van a utilizar (a no ser que se elija la opcin Option Explicit que hace obligatorio el declararlas), y hay otra forma de declarar las variables

TIPOS, DECLARACIONES Y ALCANCES DE LAS VARIABLES Que son las variables


En cualquier programa necesitamos hacer clculos, usar informacin, procesarla y mostrarla. En la mayora de los casos, necesitamos un lugar temporal en el cual guardar parte de esa informacin, incluso toda.

Es aqu donde entran en juego las variables, las que nos permite guardar datos en memoria, para que cuando los necesitemos, podamos tomarlos, modificarlos y volverlos a guardar para usar mas tarde. La memoria es el lugar donde el ordenador almacena de forma temporal los programas y parte de la informacin que necesita o utiliza. Esas posiciones o lugares de la memoria donde los programas pueden almacenar informacin son las variables. Es una ubicacin de almacenamiento temporal con nombre que se encuentra en memoria, siendo capaz de contener cierto tipo de datos que pueden modificarse durante la ejecucin del programa. En VB los nombres de las variables deben limitarse a 255 caracteres, empezar con un carcter alfabtico y no pueden obtener un punto Utilizacin temporal de almacenamiento de datos dentro de un programa. Permiten asignar nombres cortos y fcil de recordar. Son para manejar cualquier tipo de informacin.

Tipos de Variables
Dim: Al declarar una variable con esta palabra estamos diciendo que la variable sea local al mbito en que se declara. Puede ser dentro de un procedimiento o dentro de un formulario, de esta forma no sera accesible desde los dems procedimientos o formularios. Ej: Dim suma Public: Las variables declaradas sern publicas y podrn estar accesibles desde todos los formularios de la aplicacin. Para conseguirlo tendremos que declararlas en un mdulo de cdigo, no en la seccin declarations de cualquier formulario de los que conste la aplicacin. Ej: Public suma Static: Con esta forma de declarar variables conseguiremos que las variables locales no se creen y se destruyan al entrar y salir de los procedimientos donde fueron declaradas sino que se mantenga su valor

durante todo el periodo de ejecucin de la aplicacin. De esta forma a entrar en algn procedimiento las variables recuerdan el valor que tenan cuando se sali de l. Ej: Static suma

Declaracion de las variables


DIM: Es la abreviatura de Dimensin, esto reserva espacio en memoria para la variable cuando se ejecute el programa y permitir a VB que tipo de datos deber guardar en dicha variable. EJ : Dim nombre Declaracin Implcita: Declarar variables sin uso del Dim. No obliga a organizar y listar las variables de antemano. Si se va a herramientas, opciones y en editor se elige "Requerir Declaracin de Variables". Con esto VB genera un mensaje de error siempre que encuentre una variable mal escrita o declarada. Pero hay otra forma que slo es utilizable para 6 tipos. Esta forma de identificar a una variable nos permite ahorrar tiempo a la hora de escribir cdigo, adems de tratar de hacer compatible las primeras formas de asignar variables en Visual Basic (desde Visual Basic 1.0). Estas formas son extensibles para las variables tipo Integer, Long, Single, Double, String y Currency. Integer % Long & Single ! Double #

String $ Currency @ De esta forma, podemos escribir el siguiente cdigo: Private Sub Command1_Click() Sum% = 3 + 4 Num# = 32 / Sum% Label1 = Num# End Sub En este ejemplo, puede utilizarse, pero es preciso tener un ligero conocimiento de este tipo de variables para no confundir una variable de tipo Long por otra de tipo Integer por ejemplo.

Establecimiento del alcance de la variable


El alcance de las variables se refiere al rea del programa en las cuales es visible la variable. Hay cuatro niveles diferentes de alcances:

Nivel de Procedimiento: Para declarar variables, ya sea implcitas o con el enunciado DIM, es en el nivel de procedimiento. En VB, existen dos tipos de procedimientos: los procedimientosSUB y los FUCNTION. Las variables declaradas en los procedimientos son locales para ese

procedimiento. Siendo accesibles solamente por los procedimientos en los cuales estn declaradas, las variables locales tienen la visibilidad mas baja y el alcance mas estrecho. Las variables locales de un procedimiento son reinicializada cada vez que llama el procedimiento. Tambin se pueden declarar variables Estticas: es decir que las variables locales sean permanentes: EJ static nombre.

Nivel de Formulario: Si se declara una variable a nivel de forma esta


disponible en cada procedimiento en esta forma.

Nivel de Modulo: Se crean mediante la seleccin de la opcin Agregar

Modulo del men Proyecto de VB. Los mdulos de cdigos se utilizan para conservar los subprocedimientos y funciones generales que no estn relacionados con eventos, as como sus variables locales(publicas) y sus constantes. Variables Publicas: para identificar una variable global, se declara con la palabra Public. Ej: Public nompreapellido As String

Matrices
Para declarar matrices debemos colocar entre parntesis el nmero de elementos de los que constar a continuacin del nombre de la variable:
Dim medidas(9) as integer

De esta forma tenemos una matriz de 10 elementos identificados del 0 al 9 Podemos obligar a que el primer elemento de una matriz tenga el ndice con valor 1. Esto se hace colocaara cambiar el aspecto de nuestros formularios. El cambiar el valor de esta propiedad afecta tambin a las propiedades MinButton, MaxButton y ShowInTaskbar que cambian automticamente segn la opcin que hayamos seleccionado. En la siguiente tabla aparece una explicacin de cada una de sus opciones y de que valor adoptan otras propiedades del formulario

Opci ones Min de Utili But MaxButton Bor dad ton derS tyle <="" font="">option base 1 en la seccin declarations de No 0Fals nuestro formulario. Tambin podemos indicar los lmites Non apar e inferior y superior de la matriz: ecen e

Show InTas kbar

False

bord es ni barra de titul o. No pode mos modi ficar su tama o de ning una form a. Sirv e para pant allas de pres enta cin al princ ipio de nues tra aplic aci n

Dim medidas(5 to 14) as integer

Es una matriz de 10 elementos cuyos ndices van del 5 al 14. Las matrices multidimensionales se declaran de la siguiente forma:
Dim medidas(1 to 10, 1 to 10) as integer

Tipos de Datos Definidos por el Usuario

El usuario puede definir los datos en VB en la seccin General de Declaraciones de un modulo de cdigo, usando la palabra clave Type yEnd Type. Ej: Type tipoempleado Crear tipo definido por el usuario. ID As Long Nombre As String *15 Salario As Currency End Type

Por que son Indispensables las Variables


El poder y la flexibilidad aadidos a sus programas de computadoras por un uso juicioso y bien informado de variables estn ms all de cualquier discusin y no pude sobre estimarse. De hecho, cualesquiera programas, a excepcin d los ms triviales harn un uso cuidadoso de una amplia diversidad de variables, abarcando todo el expectro de tipos disponibles. Los tipos de datos personalizados son tiles en los programas de Bases de Datos, donde ayuda a considerar varios elementos diferentes de datos como una sola entidad, tal como un registro de un empleado por ejemplo, o una factura de un cliente. Por lo general el establecimiento de variables del tipo y alcance adecuado asegurara el uso ms eficiente de la memoria en sus programas.

Declaracin de Constantes
Como su palabra lo dice es Informacin que no vara hace ms fcil la comprensin del cdigo y permite modificar un valor en un solo lugar no ocupa espacio extra, Ejemplo: Const Mnimo = 1, Mximo = 10

ENTRADAS Y SALIDAS SENCILLAS CON MSGBOX() E INPUTBOX() Que son Inputbox(), Msgbox()

InputBox() Despliega un Mensaje en un cuadro de dialogo, espera que el usuario introduzca el texto o seleccione un botn y luego devuelve el contenido del cuadro de texto.

MsgBox() y MsgBox Despliega un mensaje en un cuadro de dialogo y espera que el usuario seleccione un botn.

Valor 0 1 2 3 4 5

Botn Ok(Aceptar) Ok(Cancelar) Abortar, Reiterar e Ignorar Si, No y Cancelar Si o No Reiterar y Cancelar

Constante VbOKOnly VbOKCancel VbAbortRetryIgnore VbYesNoCancel VbYesNo VbRetryCancel

16 32 48 64

Icono Parada Critica Signo de Interrogacin Signo de Exclamacin Icono de Informacin

VbCritical VbQuestion VbExclamation VbInformation

ESTRUCTURAS DE DECISIONES: RAMIFICACIONES Y CICLOS Que son las estructuras de Decisiones?


Estas estructura caen en dos amplias categoras: Ramificaciones y Ciclos. Los dispositivos como If..Then y Select Case hacen que el programa contine en una direccin cuando se encuentra una condicin particular, sin mirar nunca atrs. Las construcciones en ciclos como Do.. Loop y While..Wend, se usan para repetir un cierto bloque limitado de instrucciones hasta que las condiciones especificadas son True(cierta) o False(Falsa).

Sentencia If Then Else


La primera es la sentencia If Then Else que no debe tener secretos puesto que es muy similar en todos los lenguajes. La estructura general es la siguiente:
If condicin then bloque de sentencias Else bloque de sentencias End If

Se pueden colocar todas las sentencias de cdigo que queramos en cada uno de los bloques de sentencias, siempre que cada sentencia vaya en una lnea distinta. Si los bloques de sentencias estn formados por una sola instruccin podemos utilizar la versin reducida que ocupa una sola lnea:
If condicin then sentencia else sentencia

Ejemplo:
If isnumeric(numero) then la variable numero es numrica else no es numerica.

Tambin podemos anidar varias sentencias If then Else cuando una de las 2 opciones iniciales contiene a su vez 2 bifurcaciones dependiendo del estado de otra condicin:
if dato<10 then la variable dato contiene un solo dgito Else If dato<100 then la variable dato contiene 2 dgitos Else la variable dato contiene ms de 2 dgitos end If End If

En el ejemplo anterior se quiere saber si la variable dato contiene uno, dos o ms dgitos. Para calcularlo no es suficiente con una sola sentencia If Then Else, por tanto se recurre a anidar 2 sentencias de este tipo. La segunda sentencia If se ejecutar si la condicin de la primera sentencia If no se cumple, es decir, si dato>=10. Una vez que se ha llegado a este punto sabemos que la variable dato contiene 2 o ms dgitos, mediante una nueva

sentencia If sabremos exactamente el nmero de dgitos de la variable dato. Este ltimo ejemplo podra haberse escrito de otra forma utilizando la clusula ElseIf:
If dato<10 then la variable dato contiene un dgito ElseIf dato<100 then la variable dato contiene dos digitos Else la variable dato contiene ms de 2 digitos End If

Esta segunda opcin es perfectamente vlida cuando queremos evaluar varias condiciones, aunque tiene ms limitaciones que la estructura anterior ya que enlaza directamente el Else con el If siguiente, sin dejarnos introducir sentencias entre medias que algunas veces podramos necesitar. Podemos introducir tantas lneas ElseIF como queramos siempre antes del ltimo Else, si es que lo necesitamos. Para mltiples decisiones en los que dependiendo del valor de una variable queremos que se realice una accin distinta, parecido a los mens de los programas de MS DOS, no conviene utilizar la estructura IF Then, sino que el cdigo queda ms claro y resulta ms fcil de modificar utilizando la sentencia Select Algunas veces se puede condensar la construccin If..Then..Else..Endif dentro de una lnea de cdigo. Esto se logra con la funcin IIF(Si inmediato). Ej: Color = IIF(elcolor < 15, elcolor, 1)

Sentencia Select CASE

Esta sentencia permite realizar operaciones diferentes dependiendo del valor de una variable: Estructura General:
Select Case dato Case valor1 bloque de sentencias case valor2 bloque de sentencias Case valor3 bloque de sentencias case else bloque de senten cias, se ejecuta n si no se cumple ningun o de los valores anterio res End Select

En esta construccin, dependiendo del valor de la variable dato se ejecutar un bloque de sentencias diferente. Los valores que podemos colocar en lugar de valor1, valor2, valor3 no slo se limitan a valores constantes como nmeros y cadenas de texto, sino que podemos comparar con un nmero como podemos ver en el siguiente ejemplo:
Select Case NotaFinal

Case Is < 5 Suspendido Case 5 to 6.99 Aprobado Case 7 to 8.99 Notable Case Else Sobresaliente End Select

Como se puede observar si utilizamos los operadores lgicos como >, <, =, <=, >= debemos anteponer el operador Is. Si lo que hacemos es comparar con un intervalo de valores colocaremos el operador to entre los limites del intervalo. Tambin podemos realizar comparaciones con un conjunto de valores separados por comas: 1, 3, 5. El numero es impar. Para terminar con el tema de las sentencias de seleccin vamos a ver un ejemplo completo en el que probaremos el uso de este tipo de instrucciones. Se trata del tpico ejemplo de resolucin de una ecuacin de 2 grado. Sabemos que la estructura de una ecuacin de este tipo es la siguiente:
Case

ax2+ bx + c = 0 La frmula que resuelve el valor de x es:

Esta frmula tiene 2 soluciones, una o ninguna dependiendo del contenido de la raz, de modo que esa es la comparacin que realizaremos:

Trabajaremos con variables de tipo double que permiten decimales con la mayor precisin:

Tambin podra haberse utilizado la estructura If then Else, aunque de esta forma no hay que repetir tantas veces la condicin a evaluar. El cdigo anterior es slo una muestra de como llegar a la solucin de un problema utilizando sentencias de Visual Basic, no hemos entrado todava en como introducir este codigo en el entorno de desarrollo de VB para crear una aplicacin. Eso lo veremos en el captulo siguiente, donde hablaremos de controles que son los elementos necesarios para construir el interfaz de usuario y poder asociar el cdigo necesario para realizar nuestras aplicaciones

Sentencia de Control While Wend

Ejecuta repetidamente una o mas instrucciones mientras una condicin dada es cierta. Sintaxis: While condicin [ instrucciones] Wend

Sentencia de Control Do Until


proporciona una forma mas estructurada y flexible para ejecutar ciclos. Esta repite un bloque de codigo mientras una condicion es True o a partir de que la condicion sea True.

Sintaxis: Do Unitil cliente.EOF Print cliente("nombre") Cliente.movenext Loop Exit Do transfiere el control a la instruccin que sigue inmediatamente al ciclo.

Sentencia de Control For Next

Esta sentencia repite un grupo de instrucciones, un numero especificado de veces. Sintaxis: For contador = 1 To 10 Print cliente("nombre") Cliente.Movenext Next contador Se puede especificar tambin el intervalo Step, la cantidad que cambiar el contador cada vez que se ejecuta el ciclo. Si no se especifica, el incremento toma un valor por omisin de 1. Ej: For porcentaje = 0 To 100 Step 5 Print porcentaje & "%" Next porcentaje

Exit For se usa frecuentemente con la evaluacin de algunas condicionantes If..Then y transfiere el control a la instruccin que se encuentra a continuacin de Next.

ROBERTO Que es un Procedimiento de Evento? Permanece inactivo hasta que se llama para responder a los eventos causados por el usuario. Que es un Procedimiento Sub?

Cualquier procedimiento es una secuencia nombrada de instrucciones que ejecutan como una unidad. El procedimiento Sub es una unidad de cdigo que realiza una tarea especifica dentro de un programa, pero que no devuelve un valor explcito. Un procedimiento sub comienza con una instruccin Sub y termina con una instruccin End Sub. Esto no significa que el procedimiento Sub sea el nico, existen una serie de procedimientos que VB trae incluido ej: Sub DiskCleanup() Kill "*.Dat" Kill "*.txt" Beep Msgbox " La unidad esta Limpia", vbinformation, "Procedimiento completo" End Sub Para mandarlo a llamar solamente se escribe el nombre del procedimiento sin necesidad de usar los parntesis DiskCleanup.

Tambin existen procedimientos a los que se le pasan argumentos: Sub multiplicar(primero As integer, segundo As integer) Resultado = primero * segundo End Sub

Para mandarlo a llamar seria de la siguiente forma: Dim i As Integer, y As Integer I=3 Y=4 Multiplicar i, y

******************************************************************** ******************************************************************** *******************************

Que es un Procedimiento de Funcion?

Es un procedimiento que realiza una tarea especifica dentro de un programa y devuelve un valor. Una funcin se define en un modulo que inicia con la instruccin Function y termina con la instruccin End Function.

Funciones Utiles en VB
Funcin Len() Chr() Asc() Descripcin Devuelve la longitud de una cadena Devuelve el carcter del cdigo Devuelve el cdigo del carcter Ejemplo Ilen = Len("Hola") Schar = chr(65) Icod = Asc("A") Sup = Ucase("hola") Slow = Lcase("HOLA") Valor Ilen = 4 Schar = "A" Lcod = 65 Sup = "HOLA" Slow =("hola")

Ucase() Convierte a mayscula Lcase() Convierte a minscula

Para convertir un titulo de una manera mas presentable tal como muestra el ejemplo anterior: "el mundo es una ostra" en "El Mundo Es Una Ostra" se escribe el siguiente codigo: Function titulo(introcadena As String) As String Dim fueracadena As String Dim espacio As Integer Introcadena = Trim(Lcase(introcadena)) + " " Espacio = instr(introcadena, " ") While espacio > 0 Fueracadena = fueracadena + Ucase(Mid(introcadena, 1, 1)) + Mid(introcadena, 2, espacio 1) Introcadena = Ltrim(Mid(introcadena, espacio +1)) Espacio = instr(introcadena, " ") Wend Titulo = fueracadena

End function

INTRODUCCION A LOS CONTROLES, METODOS, PROPIEDADES Y FORMULARIOS


Una vez que ya hemos visto algunas de las sentencias bsicas: declaracin de variables, sentencias de seleccin, que son muy parecidos a las sentencias utilizadas en MSDOS. Vamos a empezar a programar en windows y veremos en que se diferencia de la programacin clsica en MS DOS, para vamos a introducir el uso de los controles. Pero Qu son los controles? Realmente son objetos que disponen de sus propias propiedades y mtodos, y cuya utilidad es la de facilitarnos el desarrollo de nuestras aplicaciones. En cualquier aplicacin con la que trabajamos estamos rodeados de controles. Quien no ha visto en multitud de programas los botones ACEPTAR y CANCELAR, un cuadro para introducir texto, una lista con datos, por mencionar algunos. Pues todos ellos son controles y no tendremos que preocuparnos por crearlos para nuestras aplicaciones sino que ya vienen con el paquete de VB, lo nico que tendremos que hacer es modificar sus propiedades: tamao, color, entre otros. Para incorporarlos en nuestras aplicaciones y asociarles el cdigo necesario para que se comporten como esperamos al ejecutar la aplicacin. Antes de empezar a conocer los controles bsicos veamos cuales son sus caractersticas generales: Propiedades: Todos los controles disponen de una serie de propiedades las cuales podemos cambiar al incluirlos en nuestras aplicaciones. Ejemplos de propiedades son el color, el tipo de letra, el nombre, el texto, entre otros. La sintaxis para asignar una propiedad de un objeto es: Objeto.Propiedad = Valor Metodos: Son procedimientos asociados a los controles, es decir, rutinas ya establecidas que podemos invocar desde nuestras aplicaciones para que se realice alguna operacin sobre el control. Por ejemplo el control ListView (la lista de

archivos que aparece en el explorador de windows) dispone del mtodo order que te ordena los datos aparecidos en la lista. Son procedimientos conectados o integrados, un bloque de cdigo que puede llamarse para impartir alguna accin a un objeto particular. Los metodos pueden requerir informacion adicional en forma de argumento. Su sintaxis es la siguiente: Objeto.Metodo Arg1, Arg2... Argn `ej: pictierra.Move 0,0

Eventos: Son acciones que pueden ser motivadas por el propio usuario o por el mismo sistema operativo. Ejemplos pueden ser el movimiento del ratn o hacer click sobre su botn. En Visual Basic digamos que se utiliza la programacin orientada a eventos, lo cual es una de las diferencias ms importantes respecto a la programacin lineal de MS DOS. No necesitamos detectar cuando se ha producido un evento determinado, Windows lo detecta automticamente. Los eventos ya estn definidos, son bastantes y cada control cuenta con los suyos propios, aunque son muy parecidos. Lo nico que tendremos que hacer es asociar el cdigo necesario al evento que necesitemos tratar. Para mostrar la ventana donde aparecen los controles que Visual Basic carga por defecto nada ms arrancar la aplicacin tendremos que marcar en Ver del men principal y activar la opcin Cuadro de Herramientas. Obtendremos una ventana como esta en la pantalla Realmente existen muchos ms controles, aunque estos son los ms utilizados y por eso aparecen por defecto. Para tener acceso a los dems controles tanto de Visual Basic como los controles que incorporan otras aplicaciones marcaremos en proyecto y luego la opcin componentes del men principal. Moviendo el ratn por encima de cualquier control aparecer una pista indicndonos el control de que se trata.

BOTONES DE COMANDOS, CUADRO DE TEXTOS Y ETIQUETAS TextBox

Mediante este control podremos realizar tanto la entrada como la salida de datos en nuestras aplicaciones. No hace falta que indiquemos las coordenadas de la situacin del formulario en pantalla, simplemente tendremos que marcar sobre el control de la caja de herramientas y dibujarlo con el tamao que queramos en nuestro formulario. Se puede almacenar el contenido actual de este control en una variable, ej: Dim viejotext, nuevotexto As String Nuevotexto = "Texto Nuevo" Viejotexto = introtexto.text Lee el texto Actual introtexto.text = nuevotexto Pone el nuevo texto

PROPIEDADES Text: Aqu indicamos el texto que aparecer en el control. Podemos asignarle cualquier texto en tiempo de diseo o ejecucin. Tambin podemos tomar el texto que haya introducido el usuario para tratarlo durante la ejecucin. Name: Esta propiedad la tienen todos los controles, el nombre que viene por defecto en este caso Text1 y es el nombre con el que se conocer el control cuando lo utilicemos en el cdigo. En un mismo formulario no puede haber 2 controles con el mismo nombre. Conviene poner un nombre que represente la funcin que tiene el control en la aplicacin para que el cdigo quede ms claro. Ejemplo, si en el textbox vamos a introducir la direccin de una persona podemos asignarle a esta propiedad el valor Direccin.

MultiLine: Permite que introduzcamos varias lneas de texto en el control en lugar de slo una. Alignment: Alineacin que tendr el texto dentro del control: izquierda, centro o derecha. Para que funcione la propiedad MultiLine debe estar con el valor true. Locked: Si esta con valor true bloquea el control, es decir, el usuario no puede introducir ni modificar el texto que contenga. Nos puede servir para utilizar el control como salida de datos sin que el usuario pueda modificarlos por error. BorderStyle: Determina el tipo de borde. PasswordChar: Oculta un texto con un carcter simple. Tag: Almacena informacin adicional(cualquier expresin de cadena), ej: almacenar la contrasea de su sistema. Otras propiedades que son comunes a la mayora de los controles: Backcolor: color de fondo. Forecolor: color de letra. Font: tipo y tamao de letra. Para personalizar las combinaciones de la barra de desplazamiento en un cuadro de texto, se puede establecer la propiedad ScrollBars en Horizontal, Vertical, Both o None. Cuando la propiedad MultiLine esta en True se puede usar la propiedad Alignment para ajustar el texto. EVENTOS Los eventos son acciones que se pueden realizar en cualquier control: click, doble click, movimiento del ratn. A estos eventos se les puede asociar cdigo para que se ejecute al producir el evento.

MouseMove: al mover el raton por encima del control. Mousedown: al pulsar cualquier boton del raton Change: al cambiar el contenido del control Click: al hacer click con el botn izquierdo del ratn sobre el control Doubleclick: al hacer doble click con el con el botn izquierdo del ratn sobre el control. Getfocus: este evento se activa cuando el control recibe el enfoque, es decir, cuando se activa el control en tiempo de ejecucin para introducir datos en l o realizar alguna operacin. Lostfocus: Es el contrario del anterior evento, se activa cuando el control pierde el enfoque, es decir, se pasa a otro control para seguir introduciendo datos.

Label

Este control es tambin uno de los ms utilizados, aunque su utilidad queda restringida a la visualizacin de datos en el mismo, no permitiendo la introduccin de datos por parte del usuario. La forma de utilizarlo es similar a la del control anterior, dibujar el control en el formulario con el tamao que

queramos y asignarle un texto en tiempo de diseo o de ejecucin esta vez sin utilizar la propiedad text puesto que no la incorpora, sino utilizando la propiedad caption. Este control sirve para mostrar mensajes en nuestro formulario que orienten al usuario sobre la utilidad de los dems controles que tengamos en la aplicacin o para indicarnos acciones que podemos realizar. En el ejemplo anterior donde apareca un textbox en el formulario, hubiera quedado mejor con un mensaje aclaratorio contenido en un control label Si se desea que se despliegue adecuadamente varias lneas de diversas longitudes, puede establecer las propiedades Autosize y WordWrapen True. PROPIEDADES Caption: Es el texto que contendr el control. Alignment: Alineacin del texto contenido en el control, no necesita que est activada ninguna otra propiedad. BorderStyle: Si queremos que aparezca un borde alrededor del control activaremos esta propiedad. Para este control no se suelen utilizar los eventos ya que su contenido suele cambiar poco a lo largo de la ejecucin de la aplicacin. De todas formas los eventos son casi los mismos del control textbox excepto que no dispone de los eventos GetFocus y LostFocus ya que a este control no se le puede dar el enfoque. CommandButton

Se usa un control de botn de comando para iniciar, interrumpir o terminar un proceso en particular.

Este control es el tpico botn que aparece en todas las aplicaciones y que al hacer click sobre l nos permite realizar alguna operacin concreta, normalmente Aceptar o Cancelar. Aunque segn el cdigo que le asociemos podremos realizar las operaciones que queramos. En el ejemplo anterior podemos aadir un control de este tipo para salir de la aplicacin sin tener que pulsar sobre la equis de la esquina superior derecha. Pero slo con introducir un control de este tipo con el texto salir que se introduce a travs de la propiedad caption no basta. Habr que asociarle un cdigo que nos permita salir de la aplicacin en el evento adecuado. Y el evento por excelencia de este control es click. As pues accederemos al cdigo del control y la sentencia nos permitir salir de la aplicacin es End, simplemente tecleamos esa palabra en el evento click y comprobar que realmente finalizaremos nuestra aplicacin al pulsar sobre dicho botn. PROPIEDADES Caption: Aqu pondremos el letrero que queremos que aparezca en el botn: aceptar, cancelar, salir, entre otros. Enabled: Esta es una nueva propiedad, cuando su valor es true el botn funciona normalmente, cuando su valor es false el botn se encuentra desactivado, no responde a los eventos producidos sobre l y el texto aparece en un gris claro advirtindonos de su estado. Podemos utilizar esta propiedad para activar o desactivar un botn dependiendo del estado de otros controles. Por ejemplo, en un botn Aceptar, no activarlo hasta que se haya introducido una cantidad en

un control textbox, ya que ese botn nos calcular el IVA de la cantidad. Appearance: Selecciona 3-D o apariencia plana. Cancel: Permite la seleccin con Esc True, False Default: Permite la seleccin con enter True, False.

EVENTOS Click: Es el evento tipico de este control y el que ms se utiliza. MouseMove: Como sabemos detecta el movimiento del ratn sobre el control. Puede servir para que aparezca un mensaje en un control Label que nos aporte informacin sobre la utilidad del control ampliando el texto que hayamos colocado como caption del commandbutton. Porque usar los cuadros de textos, Botones de comandos y etiquetas? Cuando los datos de campos se ven a travs de un formulario, esto son usualmente almacenados(o relacionados) en varios controles TextBox, los que a su vez se identifican por etiquetas. Es probable que el mismo formulario tenga algunos botones para navegar a travs de

los registros de base de datos. BOTONES DE OPCIONES, CASILLAS DE VERIFICACION Y MARCOS Que son los botones de Opcin? Es el que despliega una opcin que puede encenderse a pagarse, con la propiedad Value del botn puesta en True o False, segn el caso. Para agrupar los controles OptionButton en un marco o cuadro de dibujo, trace el marco o cuadro de dibujo primero y luego trace los controlesOptionButton adentro. Esto se hace para asegurarse que sean mutuamente excluyentes y crear una jerarqua de contenedores validas. Si traza los controles fuera del marco y los arrastra adentro, los copia dentro del marco o traza el marco alrededor de los controles existentes, no producir los resultados deseados. OptionButton Este control nos permite elegir una opcin entre varias de las que se nos plantean. Cada opcin ser un control optionbutton diferente. Facilita la introduccin de datos por parte del usuario: De todas las opciones que se nos ofrece, en este caso los 4 colores, slo podremos activar una. Si activamos cualquier otra opcin, se desactivar automticamente la ltima que tenamos activada . El marco que est alrededor de los 4 controles optionbutton se trata del control Frame

, es opcional, aunque es conveniente colocarlo siempre que hagamos uso de las opciones. No slo por motivos de presentacin sino porque de esta manera podremos establecer grupos de controles optionbutton independientes en los que en cada grupo slo pueda haber una opcin activada a la vez.

Tambin, al mover el marco se movern los controles incluidos en l facilitndonos las modificaciones. Del control Frame la nica propiedad que nos interesar es caption, que es el texto que aparecer en el encabezado, en el ejemplo anterior: colores. PROPIEDADES DE OPTIONBUTTON Caption: El texto que aparecer al lado del control: Rojo, verde... Value: Es el valor que tendr el control: True si se encuentra activado y si no lo est. Para comprobar que opcin ha activado el
False

usuario comprobaremos el estado de esta propiedad. Alignment: Alineacin del texto respecto al control: Left Justify: el control aparece a la izquierda del texto. Es el ejemplo anterior.Right Justify: el control aparece a la derecha del texto. Los eventos del control son los mismos que en anteriores controles, aunque no se suele asociar cdigo a los eventos de este tipo de controles, sino nicamente conocer el valor que tienen: true o false.

Que son las casillas de verificacin? Un CheckBox muestra una marca cuando esta seleccionado, y la marca desaparece cuando se borra el cuadro. Este control se usa para dar al usuario las opciones True/False , Si/No y Activado/Desactivado. Se puede desplegar texto junto a las casillas de verificacion,

estableciendo la propiedad Caption. Use la propiedad Value para determinar el estado del control: 1 = Marcado 0 = Sin marcar 2 = No disponible(desactivado, aparece atenuado). Ej: Select Case chksound Case 0 Msg = "No Seleccionado" Case 1 Msg = "Seleccionado" Case 2 Msg = "No Disponible" End Select MsgBox Msg Que son los Marcos? Proporciona una forma atractiva de agrupar controles relacionados. Se puede usar un marco para subdividir un formulario en otros. Primero se traza el control Frame y luego los controles dentro del Frame.

****************************************************** Jose Luis CUADROS DE LISTA Y CUADROS COMBINADOS

Que son los cuadros de lista? Los cuadros ListBox despliegan una lista de elementos en la que el usuario puede seleccionar uno o ms de estos. Si el numero de elementos excede el numero que puede desplegarse a la vista, una barra de desplazamiento se anexa automticamente al control ListBox. Los eventosClic o Ddclic del cuadro de lista se utilizan habitualmente para procesar la seleccin. Una propiedad Listcount de una lista devuelve el numero de elementos de la lista, mientras que la propiedad ListIndex se una para seguir la pista del elemento actualmente seleccionado. La propiedad MultiSelect devuelve(en tiempo de ejecucin) o establece(en tiempo de diseo) un valor que indica si un usuario puede o no hacer una seleccin mltiple, y como usted hacerse tal seleccin. Para seleccionar mas de un elemento de una lista, la propiedad MultiSelectdel control ListBox puede ponerse en 1 o 2. Descripcin y Ajuste de MultiSelect Ajustar 0 1 Descripcin No se permite la seleccin mltiple(ajuste por omisin) Seleccin mltiple sencilla. un clic del ratn u opresin de la barra espaciadora seleccionada o quita la seleccin de un elemento de lista. Seleccin mltiple extendida. Oprimiendo maysculas y haciendo clic con el ratn u oprimiendo maysculas y una de las teclas de flechas, extendiendo la seleccin del elemento seleccionado anteriormente al elemento actual.

******************************************************************** ***********************************************

Que son los cuadros combinados? La diferencia entre cuadros combinados (ComboBoxes) y cuadros de lista(ListBox) es que un control ComboBox combina las caractersticas de un control Textbox y un control Listbox. Si el usuario no desea seleccionar alguna de las opciones ofrecidas, puede teclear informacin en la parte del cuadro de texto del control. Un cuadro combinado tiene tres estilos diferentes, determinados por sus valores en la propiedad Style. Esta propiedad devuelve o establece un valor indicando el tipo de control ComboBox y el comportamiento en el cuadro de lista. Los valores de la propiedad Style del comboBoxresumen a continuacin: Descripcin y Ajuste de MultiSelect Ajustar 0 1 Descripcin DropDown Combo. Incluye una lista desplegable y un cuadro de texto. Simple combo. Incluye un cuadro de texto y una lista fija. El tamao de un simpleCombobox incluye las partes de edicin y las parte de la lista. DropDown List. Este estilo no es realmente un comboBox del todo. Este permite solamente la seleccin de la lista desplegable, cuando la parte delTextBox no esta disponible al usuario.

Propiedades y Mtodos Comunes de lista Estas se resumen en le siguiente cuadro

Propiedad ListCount ListIndex

Descripcin Numero de elementos de una lista Indice numrico del

Ejemplo de Uso Item = milista.listCount -1 Milista.Listindex = 3

elemento actual List Selected Serted Mtodo Addeitem Clear RemoveItem Con el ndice devuelve el elemento de lista True, si el elemento esta seleccionado Quintoelemento =milista.List(5) If milista.Selected(3), Then

Lista autoordenada si esta Milista.sorted = True en True Descripcin Aade la cadena de elemento Elimina todos los elementos de la lista Elimina un solo elemento de la lista Ejemplo Milista.Additem = "Hola Mundo" Milista.clear Milista.RemoveItem 5

Es importante en la manera en que trabajan los mtodos Additem y Removeitem. Ambos requieren un solo argumento, pero Additem espera una expresin de cadena, mientras que Removeitem requiere un ndice numrico.

CAPITULO III FORMULARIOS, CONTROLES Y MENU


Los formularios son tratados como controles con sus propiedades, eventos y mtodos. Aunque digamos que se trata de un control especial que utilizamos para contener los controles ms usuales con los que construiremos nuestras aplicaciones: textbox, label, commandbutton, etc. En este captulo vamos a ver las propiedades y eventos ms importantes de los formularios, como trabajar con mltiples formularios y como se establece la comunicacin entre ellos. Qu es un Formulario de Arranque?

Es el primer formulario que se despliega en la Aplicacin por lo general es el primer formulario que se crea en el Ambiente de desarrollo. No necesariamente una Aplicacin tiene que arrancar con el primer formulario del Proyecto ya que esto se puede modificar. Pasos para especificar un Formulario de Arranque: 1. Del Men de Proyecto escoger la opcin propiedades del Proyecto. 2. Hacer Click en la pestaa de Objeto inicial y seleccionar el Formulario de arranque que desea.

Cmo se utilizan los Formularios? En Visual Basic el uso de Formularios es una Actividad realmente flexible. Puede hacer que todos los Formularios de un programa sean visibles de forma simultanea o podr cargar y descargar formularios a medida que el Programa los valla necesitando. Un formulario que tenga que ser utilizado cuando se muestre por pantalla se denomina formulario modal (el Formulario acaparara la atencin del Programa hasta que el usuario pulse Aceptar, Cancelar o sea eliminado por otros medios). Un formulario que el usuario puede seleccionar o ignorar en pantalla recibe el nombre de Formulario No Modal. La mayora de aplicaciones desarrolladas por Microsoft utilizan formularios no Modales para mostrar Informacin, ya que proporcionan ms flexibilidad de empleo del usuario. Propiedades de los Formularios. Las propiedades ms comunes de los formularios y que son similares al resto de los controles son las siguientes: Name: Nombre del formulario, necesario para llamar al formulario desde el cdigo. Caption: Texto que aparece en el ttulo del formulario Backcolor: Color de fondo del formulario.

Forecolor: color del texto del formulario. Otras propiedades que son propias de los formularios y que es importante conocerlas para realizar una buena presentacin en nuestras aplicaciones son las siguientes: WindowState: Nos permite indicar el modo en el que aparecer el formulario cuando sea llamado. Tiene tres posibles valores: 0 - Normal 1 - Minimizado. 2 - Maximizado. MinButton y MaxButton: Son dos propiedades que admiten nicamente los valores True o False. Permiten que queden habilitados los botones minimizar y maximizar, respectivamente de un formulario. Nos sirven para controlar que el usuario no pueda cambiar el tamao en que presentemos un formulario en pantalla. Si slo desactivamos una de las propiedades, el botn correspondiente aparecer desactivado, pero si desactivamos las dos propiedades, no aparecer ninguno de los 2 botones, nicamente lo har el botn con la "x" de cerrar. ShowInTaskbar: Mediante esta propiedad podremos controlar que determinado formulario aparezca o no en la barra de tareas de Windows. En una aplicacin con mltiples formularios, si para cada uno de los que aparezca en pantalla, nos aparece tambin en la barra de tareas, al final la barra estar llena de aplicaciones. Podemos hacer que determinados formularios no aparezcan en ella colocando esta propiedad a False. Icon: Nos permite modificar el icono que aparece a la izquierda de la barra del ttulo de cualquier formulario, que es donde aparece el men de control, para personalizarlo en nuestra aplicacin El icono que aparece por defecto en todos los formularios se puede cambiar por otro ms simptico. ControlBox: Controla la aparicin del men de control.

Esta propiedad por defecto est activada, aunque si la ponemos a False, no slo hacemos desaparecer el icono que simboliza al men de control, sino que desaparecen tambin los botones de minimizar, maximizar y cerrar. Unicamente aparece la barra de titulo con el caption Si adems de colocar ControlBox a False, colocamos MinButton y MaxButton a False y dejamos vaca la propiedad Caption, es decir sin nada en el ttulo, nos aparecer un formulario sin barra de titulo, es decir, nicamente un rectngulo gris que s podremos cambiar de tamao apuntando sobre el borde. BorderStyle: Esta propiedad es la que ms opciones tiene y la que ms posibilidades ofrece para cambiar el aspecto de nuestros formularios. El cambiar el valor de esta propiedad afecta tambin a las propiedades MinButton, MaxButton y ShowInTaskbar qu e cambian automticamente segn la opcin que hayamos seleccionado. En la siguiente tabla aparece una explicacin de cada una de sus opciones y de que valor adoptan otras propiedades del formulario

Opciones de BorderStyle

Utilidad No aparecen bordes ni barra de titulo. No podemos modificar su tamao de ninguna forma. Sirve para pantallas de presentacin al principio de nuestra aplicacin No se puede cambiar su tamao. Ni siquiera se puede maximizar haciendo doble click sobre la barra del ttulo, algo que s se puede hacer desactivando los botones MinButton y MaxButton en un formulario normal

MinButton MaxButton ShowInTaskbar

0- None

False

False

False

1 - Fixed Single

False

False

True

Formulario por defecto de VB. Contiene todos los botones de la 2 - Sizable barra del ttulo, se puede cambiar (aparece por su tamao actuando sobre el defecto) borde y aparece en la barra de tareas.

True

True

True

3 - Fixed Dialog

No se puede cambiar su tamao y no aparece en la barra de tareas

False

False

False

Aparece con la barra de titulo ms pequea, es el que utiliza VB para mostrar la caja de 4 - Fixed ToolWindow herramientas. No aparece el icono del men de control ni aparece en la barra de tareas. Igual que el anterior pero s 5 - Sizable permite modificar su tamao ToolWindow actuando sobre el borde. Utilizacin de Mltiples Formularios

False

False

False

False

False

False

Para utilizar varios formularios en nuestra aplicacin tendremos que aadir cada uno de ellos mediante la opcin de men Insert / Form o pulsando sobre el botn

. Mtodo Show. Para llamar a un formulario desde el cdigo se utiliza el mtodo Show. Si el formulario 2 tiene en la propiedad Name form2, para llamarlo desde otro formulario se escribe:
Form2. Show

Si no se pone ningn argumento se asume que el formulario aparece en modo no modal, es decir, se permitir que se active cualquier otro formulario sin cerrar el formulario 2. La otra modalidad que existe es modal, lo que significa que no se permite el enfoque hacia ningn otro formulario hasta que no se cierre el actual. Este ltimo modo puede servir para cuadros de dilogo que soliciten ciertos parmetros para que la aplicacin siga funcionando: una contrasea. Los argumentos del mtodo Show son:

0 1

VbModeless VbModal Ejemplo:

No modal Modal

Form2.Show vbModal

Sentencia Load. La sentencia Load seguida del nombre de un formulario provoca que se cargue el formulario en memoria pero sin visualizarse, ya que la propiedad Visible se coloca a False. Ejemplo
Load Form2

Realmente el mtodo Show realiza la carga del formulario en memoria, si no estaba cargado antes, y coloca la propiedad Visible del formulario aTrue. Durante este proceso se provoca la activacin de los eventos Load y Activate del formulario en ese orden. En dichos eventos se puede colocar el cdigo necesario que haga que el formulario se inicie siempre con los valores deseados. Si el formulario ya estaba cargado en memoria, mediante una sentencia Load o porque se haya ocultado con el mtodo Hide, al llamarlo con el mtodo Show, nicamente se realizar la modificacin de la propiedad Visible a True, y no se volver a efectuar el proceso de carga del formulario a memoria. Por tanto el formulario aparecer con los mismos datos que tena cuando se ocult. Ahora el nico evento que se activar es el Activate que se activa cada vez que un formulario recibe el enfoque o pasa a ser el formulario activo. Sentencia Unload. Permite descargar un formulario de la memoria. Se introduce junto al nombre del formulario que se va a descargar:
Unload Form2

Si se esta dentro del mismo formulario para descargarlo no

hace falta colocar el nombre sino nicamente:


Unload me

En una aplicacin con varios formularios se debe usar esta sentencia para los mtodos que se terminan de utilizar, de esta forma se libera espacio en memoria para que los otros formularios puedan aprovecharla mejor. La sentencia unload provoca la activacin de los eventos: Deactivate: Al contrario que el evento Activate, este se activa cada vez que un formulario pierde el enfoque. Tambin se activa este evento al utilizar el mtodo Hide. Unload: Este evento recibe el parmetro Cancel, y al modificar su valor se puede hacer que se suspenda (cancele) el proceso de descarga de un formulario. Mediante 2 lneas de cdigo se puede hacer una pregunta al usuario cada vez que se cierra un formulario para que confirme la operacin:

Este cdigo provocar que cada vez que se cierre el formulario de cualquier forma, (no slo mediante la sentencia Unload sino tambin haciendo click sobre la "x", el men de control o con ALT + F4) aparezca un mensaje que pregunta si realmente se desea salir: Query_Unload: Este evento se produce realmente antes que el evento Unload. En este evento adems de recoger el parmetro Cancel, tambin proporciona el parmetro UnloadMode que segn el valor que tenga se podr saber desde donde se produce la posible descarga del formulario. Los valores que puede tener son los siguientes: 0 - vbFormControlMenu: Significa que el cierre del formulario se ha producido: Pulsando sobre la "x" Mediante la opcin cerrar del Men de Control.

Pulsando ALT + F4. Cerrando el formulario desde la Barra de Tareas. 1 - vbFormCode: Indica que se ha cerrado el formulario utilizando la sentencia Unload. 2 - vbAppWindows: Se cierra el formulario porque se apaga el sistema desde Inicio / Apagar Sistema. 3 - vbAppTaskManager: Desde el administrador de tareas de windows (CTRL + ALT + DEL) se cierra la aplicacin que contiene el formulario 4 - vbFormMDIForm: Se produce cuando se cierra un formulario hijo porque se est cerrando el formulario MDI que lo contiene. Mediante unas lneas de cdigo se va a probar las posibilidades de este evento. Segn desde donde se cierre el formulario del que consta la aplicacin aparecer un mensaje distinto que pide confirmacin en el proceso de descarga. Nota: Para el correcto funcionamiento de este ejemplo se debe compilar la aplicacin mediante File / Make EXE File... y ejecutar la aplicacin desde fuera del entorno de trabajo de VB. Esto es as para que se pueda cerrar la aplicacin apagando el sistema y desde el administrador de tareas. El cdigo asociado al evento Query_Unload es el siguiente:

Desde un formulario se puede tener acceso a los controles y propiedades de otro formulario. En lugar de realizar el paso de parmetros cuando se llama a otro formulario que queremos que aparezca con unos determinados valores iniciales, lo que se hace es acceder a los controles del otro formulario y despus mostrarlo mediante el mtodo Show. Para acceder a los controles de otro formulario se sigue la siguiente sintaxis:

Formulario!Control.Propiedad = valor Se debe colocar una admiracin "!" entre el formulario y el control y un punto entre el control y la propiedad

Al acceder a las propiedades de otro formulario automticamente se carga ste en memoria, si no lo estaba ya antes. Una vez que se hayan modificado sus propiedades los visualizaremos con el mtodo Show. No se puede acceder a las variables declaradas en otro formulario, de modo que si se quiere trabajar con variables generales, las cuales sean accesibles desde cualquier formulario de la aplicacin, se tendrn que declararlas como Pblicas desde un mdulo de cdigo Para insertar un mdulo en un proyecto de Visual Basic se tendr que marcar en Proyecto y dentro de la opcin proyecto Agregar Modulo o pulsar sobre el

botn de la barra de herramientas. Aparecer una ventana en la que nicamente se podrn colocar las variables y procedimientos o funciones que se deseen pblicas para toda la aplicaci&oacutALIGN="CENTER">False No se pued e cam 1 - biar Fixe su Fals tama d e Sing o. Ni le siqui era se pued e

False

True

maxi miza r haci endo dobl e click sobr e la barra del ttul o, algo que s se pued e hace r desa ctiva ndo los boto nes Min Butt on y Max Butt on en un form ulari o nor mal 2Siza ble (apa rece por For mula rio Tru por e defe cto

True

True

defe de cto) VB. Cont iene todo s los boto nes de la barra del ttul o, se pued e cam biar su tama o actu ando sobr e el bord ey apar ece en la barra de tarea s. No se pued e 3 - cam Fixe biar Fals su d e Dial tama o y og no apar ece en la

False

False

barra de tarea s Apar ece con la barra de titul o ms pequ ea, es el que utiliz a VB para most rar la caja de Fals herra e mien tas. No apar ece el icon o del men de contr ol ni apar ece en la barra de tarea s.

4Fixe d Tool Win dow

False

False

5 - Igual Fals e Siza que

False

False

ble Tool Win dow

el anter ior pero s perm ite modi ficar su tama o actu ando sobr e el bord e.

Utilizacin de Mltiples Formularios Para utilizar varios formularios en nuestra aplicacin tendremos que aadir cada uno de ellos mediante la opcin de men Insert / Form o

pulsando sobre el botn Mtodo Show.

Para llamar a un formulario desde el cdigo se utiliza el mtodo Show. Si el formulario 2 tiene en la propiedad Name form2, para llamarlo desde otro formulario se escribe:
Form2.Show

Si no se pone ningn argumento se asume que el formulario aparece en modo no modal, es decir, se permitir que se active cualquier otro formulario sin cerrar el formulario 2. La otra modalidad que existe es modal, lo que significa que no se permite el enfoque hacia ningn otro formulario hasta que no se cierre el actual. Este ltimo modo puede servir para cuadros de dilogo que soliciten ciertos parmetros para que la aplicacin siga funcionando: una contrasea.

Los argumentos del mtodo Show son:


0 1 VbModeless VbModal No modal Modal

Ejemplo:
Form2.Show vbModal

Sentencia Load. La sentencia Load seguida del nombre de un formulario provoca que se cargue el formulario en memoria pero sin visualizarse, ya que la propiedad Visible se coloca a False. Ejemplo
Load Form2

Realmente el mtodo Show realiza la carga del formulario en memoria, si no estaba cargado antes, y coloca la propiedad<stronge;n.< p=""></stronge;n.<> En el siguiente ejemplo se declara la variable Gen_var de tipo Integer que ser accesible desde cualquier formulario de la aplicacin: CREACION DE MENUS. El Editor de Men es una Aplicacin de diseo de mens que se incluye en Visual Basic. El Editor Men consiste en un cuadro de texto que consta de: Caption: Se teclea el nombre del Men o del comando que aparecer en la Barra de Men. Para permitir el acceso por teclado al elemento de Men se inserta un Ampersand (&) antes de una letra. Tambin puede crear una barra separadora tecleando un guin (-). Name: Se usa para teclear el nombre del Control para el elemento del Men. Es un identificador que se usa solamente para accesar el elemento del men en cdigo y no aparecer en un Men. Index: Se usa para asignar un valor numrico que determina la posicin del elemento del menu dentro de un arreglo de

control. Shortcut: Presenta una lista desde la que puede seleccionar una tecla de atajo para el elemento del men. HelpContextId: Se usa para asignar un valor numrico para el Id de contexto. Este valor se usa para encontrar el tema de ayuda apropiado en al archivo de ayuda identificado por la propiedad HelpFile. Checked: Es una casilla de verificacin que se selecciona si desea que aparezca una >Visible del formulario a True. Durante este proceso se provoca la activacin de los eventos Load yActivate del formulario en ese orden. En dichos eventos se puede colocar el cdigo necesario que haga que el formulario se inicie siempre con los valores deseados. Si el formulario ya estaba cargado en memoria, mediante una sentencia Load o porque se haya ocultado con el mtodo Hide, al llamarlo con el mtodo Show, nicamente se realizar la modificacin de la propiedad Visible a True, y no se volver a efectuar el proceso de carga del formulario a memoria. Por tanto el formulario aparecer con los mismos datos que tena cuando se ocult. Ahora el nico evento que se activar es el Activate que se activa cada vez que un formulario recibe el enfoque o pasa a ser el formulario activo. Sentencia Unload. Permite descargar un formulario de la memoria. Se introduce junto al nombre del formulario que se va a descargar:
Unload Form2

Si se esta dentro del mismo formulario para descargarlo no hace falta colocar el nombre sino nicamente:
Unload me

En una aplicacin con varios formularios se debe usar esta sentencia para los mtodos que se terminan de utilizar, de esta forma se libera espacio en memoria para que los otros formularios puedan aprovecharla mejor. La sentencia unload provoca la activacin de los eventos: Deactivate: Al contrario que el evento Activate, este se activa cada vez que un formulario pierde el enfoque. Tambin se activa este evento al utilizar el mtodo Hide.

Unload: Este evento recibe el parmetro Cancel, y al modificar su valor se puede hacer que se suspenda (cancele) el proceso de descarga de un formulario. Mediante 2 lneas de cdigo se puede hacer una pregunta al usuario cada vez que se cierra un formulario para que confirme la operacin:

Este cdigo provocar que cada vez que se cierre el formulario de cualquier forma, (no slo mediante la sentencia Unload sino tambin haciendo click sobre la "x", el men de control o conALT + F4) aparezca un mensaje que pregunta si realmente se desea salir: Query_Unload: Este evento se produce realmente antes que el evento Unload. En este evento adems de recoger el parmetro Cancel, tambin proporciona el parmetro UnloadMode que segn el valor que tenga se podr saber desde donde se produce la posible descarga del formulario. Los valores que puede tener son los siguientes: 0 - vbFormControlMenu: Significa que el cierre del formulario se ha producido: Pulsando sobre la "x" Mediante la opcin cerrar del Men de Control. Pulsando ALT + F4. Cerrando el formulario desde la Barra de Tareas. 1 - vbFormCode: Indica que se ha cerrado el formulario utilizando la sentencia Unload. 2 - vbAppWindows: Se cierra el formulario porque se apaga el sistema desde Inicio / Apagar Sistema. 3 - vbAppTaskManager: Desde el administrador de tareas de windows (CTRL + ALT + DEL) se cierra la aplicacin que contiene el formulario 4 - vbFormMDIForm: Se produce cuando se cierra un formulario hijo porque se est cerrando el formulario MDI que lo contiene.

Mediante unas lneas de cdigo se va a probar las posibilidades de este evento. Segn desde donde se cierre el formulario del que consta la aplicacin aparecer un mensaje distinto que pide confirmacin en el proceso de descarga. Nota: Para el correcto funcionamiento de este ejemplo se debe compilar la aplicacin mediante File / Make EXE File... y ejecutar la aplicacin desde fuera del entorno de trabajo de VB. Esto es as para que se pueda cerrar la aplicacin apagando el sistema y desde el administrador de tareas. El cdigo asociado al evento Query_Unload es el siguiente:

Desde un formulario se puede tener acceso a los controles y propiedades de otro formulario. En lugar de realizar el paso de parmetros cuando se llama a otro formulario que queremos que aparezca con unos determinados valores iniciales, lo que se hace es acceder a los controles del otro formulario y despus mostrarlo mediante el mtodo Show. Para acceder a los controles de otro formulario se sigue la siguiente sintaxis: Formulario!Control.Propiedad = valor Se debe colocar una admiracin "!" entre el formulario y el control y un punto entre el control y la propiedad

Al acceder a las propiedades de otro formulario automticamente se carga ste en memoria, si no lo estaba ya antes. Una vez que se hayan modificado sus propiedades los visualizaremos con el mtodo Show. No se puede acceder a las variables declaradas en otro formulario, de modo que si se quiere trabajar con variables generales, las cuales sean accesibles desde cualquier formulario de la aplicacin, se tendrn que declararlas como Pblicas desde un mdulo de cdigo

Para insertar un mdulo en un proyecto de Visual Basic se tendr que marcar en Proyecto y dentro de la opcin proyecto Agregar Modulo o

pulsar sobre el botn de la barra de herramientas. Aparecer una ventana en la que nicamente se podrn colocar las variables y procedimientos o funciones que se deseen pblicas para toda la aplicacin. En el siguiente ejemplo se declara la variable Gen_var de tipo Integer que ser accesible desde cualquier formulario de la aplicacin: CREACION DE MENUS. El Editor de Men es una Aplicacin de diseo de mens que se incluye en Visual Basic. El Editor Men consiste en un cuadro de texto que consta de: Caption: Se teclea el nombre del Men o del comando que aparecer en la Barra de Men. Para permitir el acceso por teclado al elemento de Men se inserta un Ampersand (&) antes de una letra. Tambin puede crear una barra separadora tecleando un guin (-). Name: Se usa para teclear el nombre del Control para el elemento del Men. Es un identificador que se usa solamente para accesar el elemento del men en cdigo y no aparecer en un Men. Index: Se usa para asignar un valor numrico que determina la posicin del elemento del menu dentro de un arreglo de control. Shortcut: Presenta una lista desde la que puede seleccionar una tecla de atajo para el elemento del men. HelpContextId: Se usa para asignar un valor numrico para el Id de contexto. Este valor se usa para encontrar el tema de ayuda apropiado en al archivo de ayuda identificado por la propiedad HelpFile. Checked: Es una casilla de verificacin que se selecciona si desea que aparezca una marca de verificacin a la izquierda. Enable: Es una casilla de verificacin que se selecciona si desea que el elemento del men aparezca en el men.

También podría gustarte