Sei sulla pagina 1di 60

Tipos De Declaracin de Variables

I.S.T.P. Andrs A. Cceres D

Carrera: Computacin e Informtica


Tipos de declaracin de variables

Curso: Lenguaje de Programacin II Docente: Justino Gengs Montalvn Alumnos:


Robles Crisstomo Tatiana

Semestre: II seccin: B Turno: Vespertino

Tatiana Robles Crisstomo

Pgina 1

Tipos De Declaracin de Variables


Tipos de declaracin de variables. Sentencia DIM: Es la forma ms comn de declarar una variable como Privada. Puede emplearse en un Procedimiento, Funcin, Formulario o Mdulo. La sintaxis es de la siguiente forma: Dim nombre variable As Integer(o el tipo que sea) Declarando una variable con la sentencia DIM, en un formulario, Funcin, procedimiento o mdulo, el entorno de la variable ser el explicado anteriormente para una variable declarada como Privada. Es decir, esa variable no sale del formulario, procedimiento mdulo donde se declar. Cada vez que entremos al formulario, procedimiento o mdulo, esa variable tomar el valor cero (si es numrica) o nulo (si es string). Sentencia PRIVATE: Es la forma de declarar una variable como Privada. Puede Emplearse solamente en la seccin de declaraciones de un Formulario o Mdulo. La sintaxis es de la siguiente forma: Prvate nombre variable As Tipo variable Declarando una variable mediante la sentencia PRIVATE en un Formulario o Mdulo, esa variable puede usarse en todo ese Formulario o Mdulo (En todos sus Procedimientos y Funciones), pero NO fuera del Formulario o Mdulo donde se declar. La sentencia Prvate no puede usarse en un procedimiento o funcin. Sentencia PUBLIC: Es la forma de declarar una variable como Pblica. Puede Emplearse solamente en la seccin de declaraciones de un Formulario o Mdulo. La sintaxis es de la siguiente forma: Public nombrevariable As Tipo variable Declarando una variable de esta forma en la seccin de declaraciones de un Mdulo, esa variable puede usarse en cualquier parte del programa citndola simplemente por su nombre. Si se declara de esta forma en la seccin de declaraciones de un Formulario, esa variable puede usarse en toda el programa. Para nombrarla, si estamos en el Formulario donde se declar basta con citarla por su nombre. Si no estamos

Tatiana Robles Crisstomo

Pgina 2

Tipos De Declaracin de Variables


en ese Formulario, habr que citarla por el nombre del Formulario, seguido del nombre de la variable, separados por un punto : Nombre Formulario. Nombre variable En un Mdulo puede usarse tambin la sentencia Global en vez de Public : Sentencia GLOBAL: Declara una variable que es vlida en todo el programa. La sintaxis es: Global nombre variable Astipovariable La sentencia Global slo puede usarse en el apartado de declaraciones de un Mdulo. Mediante la sentencia Global la variable puede usarse en todo el espacio del programa. Sentencia STATIC: Como se dijo anteriormente, una variable declarada en un procedimiento pierde su valor al salir de l. Lo peor es que una vez que el programa vuelva a entrar en ese procedimiento, la variable estar puesta a cero. Afortunadamente, esto ltimo tiene solucin. Si declarsemos una variable en un procedimiento o funcin, como esttica, esa variable, aunque no la podremos utilizar fuera de ese procedimiento o funcin, cuando volvamos a l conservar el valor que tena cuando lo abandonamos. Esta declaracin como esttica se realiza mediante la instruccin Static Static nombre variable Astipovariable El nombre de una variable puede ser tan largo como queramos. hasta un mximo de 40 caracteres. En la versin VB para Espaa se pueden usar incluso la y vocales acentuadas. Es indiferente usar mayscula minsculas. No se sorprenda, si por ejemplo, la ha declarado con maysculas y luego la cita con minsculas al escribir el cdigo, que automticamente se cambie a maysculas. El nombre de una variable siempre debe comenzar por una letra. No hay problema por utilizar variables largas. Al compilar el programa no se lleva el nombre, es decir, no le va a ocupar ms espacio. Utilice siempre nombres que le definan la variable con algn sentido. Es muy til a la hora de acordarse como se llaman, y sobre todo, a la hora de rehacer un programa que realiz hace seis meses.

Tatiana Robles Crisstomo

Pgina 3

Tipos De Declaracin de Variables


Pese a que Visual Basic no obliga a declarar variables, es muy til hacerlo. De esta forma se tiene control sobre el programa. La experiencia se lo ir demostrando. Sentencias condicionales. Llamamos sentencias condicionales a aquellas que se realizan si se cumple una determinada condicin. Son las sentencias por las que empieza cualquier texto de Basic, y este no va ser menos. La sentencia condicional ms usada es: Si se cumple una condicin Entonces Realiza estas instrucciones Si no se cumple Realiza estas otras instrucciones Fin de la sentencia. As de fcil es programar en Basic. Lo que ocurre es que esta herramienta habla ingls, y lo descrito anteriormente toma la forma: La sentencia condicional tendra entonces la forma: If condicin 1 Then Instrucciones ElseIf Condicin 2 Otras instrucciones ElseIf Condicin 3 Otro juego de instrucciones Else Instrucciones que debe realizar caso de no cumplir las condiciones 1, 2 y 3. End If Como decamos anteriormente, este es el tipo de sentencia condicional mas usada. Existe otra: Tatiana Robles Crisstomo Pgina 4

Tipos De Declaracin de Variables


Select Case Su nombre casi nos define lo que es: Selecciona, dependiendo del caso, un determinado juego de instrucciones: Switch: toma una serie de parmetros, todos por parejas. El primer trmino de cada pareja es la expresin a evaluar. El segundo es el valor que tiene que devolver. En realidad Switch es una funcin (las funciones las veremos muy pronto) A = Switch (B=1, 5, B=2, 7, B=3, 11) Esta instruccin obtiene un valor para A que depender del valor que tome B entre los valores posibles (1, 2 3) La sentencia Choose es casi igual, cambia solamente la forma. La misma intruccin anterior puede realizarse con Choose de la siguiente forma: A = Choose (B, 5, 7, 11) En estas sentencias, Switch y Choose, si el valor de B no coincide con ninguno de los valores que se le haban establecido (1, 2 3 en nuestro caso), la sentencia devuelve el valor Nulo ( Null ). Esto puede producir algn error si no se contempla esa posibilidad. Con estas sentencias condicionales es posible realizar bifurcaciones del programa, cambiar las propiedades de un objeto, obtener resultados de operaciones, .... Sentencias de bucle: Es muy comn utilizar bucles a lo largo de un programa. Un bucle es una sucesin repetitiva de instrucciones, que se estarn realizando mientras se cumpla una condicin o mientras no se cumpla otra condicin. Es tan sencillo como esto: Mientras condicin Instrucciones Fin del bucle Existen dos formas de bucle: Una, que realiza un nmero determinado de recorridos por el bucle. Es el denominado bucle por contador. Otra, realiza el

Tatiana Robles Crisstomo

Pgina 5

Tipos De Declaracin de Variables


bucle hasta que se cumpla (o deje de cumplirse) una condicin. Es el llamado bucle por condicin. Bucle por contador Realiza el bucle tantas veces como le indiquemos. Por ejemplo, en este bucle nos va a presentar las 26 letras maysculas del alfabeto ingls For N=65 To 90 Label1.caption = Chr ( N ) Next N Este "programa" nos presentar en una caja (Label) los caracteres cuyo nmero ASCII vaya desde el 65 (A) al 90 (Z) Comenzar presentando el correspondiente al nmero 65, e ir presentando sucesivamente el 66, el 67, etc., hasta llegar al 90, donde se parar. Bucles por condicin Ejecuta las instrucciones del bucle mientras se cumple una condicin X=0 Do While X < 1000 X=X+1 Loop:El programa toma una variable ( X ) que previamente tuvimos la curiosidad de ponerla a cero, e incrementa su valor una unidad. Analiza si el valor de X es menor que 1000, y si es cierto, vuelve a realizar el bucle. As hasta que X ya no sea menor que 1000. Al dejar de cumplirse que X sea menor que 1000, sale del bucle. Acabamos de realizar un temporizador, y tambin de exponer las sentencias condicionales y los bucles, inicio de cualquier curso de Basic. Como final de leccin, se propone un problema. Con el primer bucle, donde visualizbamos los caracteres A a la Z, posiblemente no nos diese tiempo de ver cada una de las letras que iban apareciendo en la pantalla, en la etiqueta Label1, dado que cambiara con mucha velocidad, y solamente veramos la Z, que es donde se detuvo el programa. Podemos poner un temporizador cada vez que presente una letra, y as nos dar tiempo a verla. Con los dos bucles vistos anteriormente ya podemos hacerlo. Si lo que queremos es que el programa se ejecute mientras no se cumpla una determinada condicin, la sentencia ser: Tatiana Robles Crisstomo Pgina 6

Tipos De Declaracin de Variables


X=0 Do Until X > 1000 X=X+1 Click: Este procedimiento es el que se realiza cuando hacemos click sobre ese botn. Escriba en ese procedimiento este cdigo. Private Sub Command1_Click() ' Esta lnea sale automticamente Loop Next N' Termina el bucle de temporizacin End Sub ' Esta lnea sale automticamente Hemos puesto nuestra primera piedra en Visual Basic. Este ejemplo es muy sencillo. Visual Basic es tan sencillo como este ejemplo. Funciones de cadenas Se denomina CADENA a una sucesin de caracteres. Una cadena puede tener uno o varios caracteres alfanumricos. Una cadena es tambin una sucesin de nmeros. Str: (nmero) Convierte un nmero a una cadena en numeracin decimal. Val :(cadena numrica) Obtiene el valor (el nmero) correspondiente a esa cadena. Ejemplos Variablenumerica = Val (TextBox1.Text) Este ejemplo convierte la cadena de caracteres (numricos) que hubiese en la caja de texto TextBox1 en un nmero, y asocia este nmero a la variable Variablenumerica. Si el contenido de la caja de textos no fuesen caracteres numrico (abcd, por ejemplo), Variablenumerica tomara el valor 0. Label1.Caption = Str (Variablenumerica) Este ejemplo pondra en la etiqueta Label1 los caracteres correspondientes al valor que tuviese la variable Variablenumerica .: Tatiana Robles Crisstomo Pgina 7

Tipos De Declaracin de Variables


Left: (cadena, n) Extrae los n primeros caracteres de una cadena, comenzando por la izquierda. Si cadena = Curso de Visual Basic (Para todos los ejemplos) Resultado = Left (cadena, 10) ----> Resultado = Curso de V Right :(cadena, n) Extrae lo n ltimos caracteres de la cadena Resultado = Right (cadena, 10) ----> Resultado = sual Basic Mid (cadena, m, n) :Extrae n caracteres de la cadena, siendo el primer carcter extrado el que ocupa el lugar m. (Vea Instruccin Mid mas abajo) Resultado = Mid (cadena, 3, 10) ----> Resultado = rso de Vis LCase (cadena): Devuelve otra cadena igual, pero con todos los caracteres en minsculas. (LCase = Lower Case) Resultado = Lcase (cadena) ----> Resultado = curso de visual basic UCase (cadena) Devuelve otra cadena igual, pero con todos los caracteres en maysculas. (UCase = Upper Case) Resultado = UCase (cadena) ----> Resultado = CURSO DE VISUAL BASIC Len (cadena): Devuelve la longitud de la cadena Resultado = Len (cadena) ----> Resultado = 21 LenB (Cadena) Devuelve el nmero de Bytes empleados para almacenar la cadena. Sorprndase, es el doble que Len (Cadena) String (n, carcter) :Devuelve una cadena de n caracteres como el indicado Resultado = String (8, "a") ----> Resultado = aaaaaaaa Resultado = String (8, Chr(65)) ----> Resultado = AAAAAAAA Resultado = String (8, 65) ----> Resultado = AAAAAAAA

Tatiana Robles Crisstomo

Pgina 8

Tipos De Declaracin de Variables


Space (n): Devuelve una cadena formada por n espacios. Resultado = "A" + Space (6)+ "B" ----> Resultado = A B LTrim :Elimina los posibles espacios que tenga una cadena por su izquierda. Rtrim: Elimina los posibles espacios que tenga una cadena por su derecha. Trim: Elimina los espacios que tenga una cadena, tanto por su izquierda como por su derecha. (No elimina los espacios centrales de la cadena) Estas tres funciones se emplean para quitar los posibles espacios que pueden resultar de una entrada de datos. Tienen especial importancia cuando se toman los datos de un archivo o base de datos, donde fueron introducidos por otro programa. No se pone ningn ejemplo de estas funciones, pues sera difcil verlo impreso. InStr :(cadena, cadena1) Busca la cadena1 dentro de cadena y devuelve el nmero de orden dentro de cadena donde se encuentra la primera letra de cadena1 Resultado = InStr (cadena, "sua") ----> Resultado = 12 StrConvConvierte una cadena de caracteres en otra, segn las instrucciones que le sigan. Puede sustituir a UCase o LCase si la instruccin es UpperCase o LowerCase respectivamente, o poner la primera letra de todas las palabras de la cadena en maysculas, si la instruccin es ProperCase. Resultado = StrConv (cadena, UpperCase) ----> Resultado = CURSO DE VISUAL BASIC Resultado = StrConv (cadena, LowerCase) ----> Resultado = curso de visual basic Resultado = StrConv (cadena, ProperCase) ----> Resultado = Curso De Visual Basic Instruccin Mid: Mid puede usarse tambin para cambiar el contenido de una cadena. Observe la sutileza entre Mid como Funcin de cadena y Mid como Instruccin. Tatiana Robles Crisstomo Pgina 9

Tipos De Declaracin de Variables


La Instruccin Mid reemplaza un nmero especificado de caracteres en una variable de cadena con caracteres de otra cadena. Sintaxis Mid(cadena1, inicio[, longitud]) = cadena2 Resultado Mid (cadena, 7,2)="Sobre" ---- > Resultado = Curso sobre Visual Basic FUNCIONES CON NUMEROS Visual Basic puede operar con nmeros tal como lo hara cualquier persona. Conoce las 4 reglas, y puede utilizar parntesis de la misma forma que los escribimos sobre el papel. Los operadores que utiliza para las operaciones bsicas son: + Suma - Resta * Multiplicacin / Divisin \ Divisin sin decimales Mod Resto de una divisin ^ Eleva a un exponente Ejemplos Resultado = 12 + 15 ----> Resultado = 27 Resultado = 15 - 12 ----> Resultado = 3 Resultado = 15 * 12 ----> Resultado = 180 Resultado = 15 / 12 ----> Resultado = 1.25 Resultado = 15 \ 12 ----> Resultado = 1 Resultado = 15 Mod 12 ----> resultado = 3 Resultado = 12 ^ 2 ----> Resultado = 144

Tatiana Robles Crisstomo

Pgina 10

Tipos De Declaracin de Variables


resultado = ( ( 4 * 3 ) / 2 ) ^ 2 ----> Resultado = 36 Estos operadores se denominan Operadores aritmticos. Existen otras operaciones que se pueden realizar con nmeros: comparaciones. Los operadores que realizan comparaciones se denominan Operadores relacionales. El resultado de las operaciones realizadas con estos operadores solamente admiten dos resultados: True (Cierto) o False (Falso) Estos operadores son: = Igual que <> No igual que < Mayor que <= Mayor o igual que > Menor que => Igual o menor que Estos operadores se suelen utilizar en estructuras de programa donde se tome una decisin. El operador = puede usarse tambin para comparar cadenas o fechas. Operadores Lgicos Estos operadores slo tienen sentido cuando hablemos de variables Booleanas, es decir, aquellas que solamente pueden tomar los valores cero y uno. Operador Funcin Devuelve True si Devuelve False si And Funcin AND A=True y B=True Cualquier otro caso OrFuncin OR A=True o B=True A=False y B=False Xor Funcin XOR A=True y B=False A=True y B=True A=False y B=True A=False y B=False EqvF. Equivalente A=True y B=True A=True y B=False A=False y B=False A=False y B=True ImpImplicacin A=True y B=True A=True y B=False Tatiana Robles Crisstomo Pgina 11

Tipos De Declaracin de Variables


A=False y B=True A=False y B=False Not Negacin A=False A=True LikeIgualdad A=True A=False Otras Funciones con nmeros CInt Parte entera Devuelve la parte entera de un nmero con decimales AbsValor Absoluto Devuelve el valor absoluto de un nmero SgnSigno Devuelve el signo de un nmero Sqr Raz cuadrada Devuelve la raz cuadrada de un nmero Exp Exponenciacin Devuelve el nmero elevado al exponente indicado Log Logaritmo Devuelve el logaritmo natural de ese nmero Trigonomtricas Sin Seno Devuelve el valor del seno de un ngulo (Expresado en radianes) Cos Coseno Devuelve el coseno de un ngulo (En radianes) Tan Tangente Devuelve la tangente de un ngulo Atn Arco Tang. Devuelve un arco cuya tangente sea el nmero (Angulo en radianes) Una funcin curiosa TimerTiempo acumulado Devuelve el tiempo (en segundos) que ha pasado desde las 12 de la noche. Generacin de nmeros aleatorios Randomize (Numero) Inicia el generador aleatorio tomando como dato de partida el Numero. Devuelve el resultado en una variable llamada Rnd. Randomize. La funcin toma entonces la forma: Tatiana Robles Crisstomo Pgina 12

Tipos De Declaracin de Variables


Randomize Timer La funcin Randomize devuelve una variable Rnd con un nmero comprendido entre 0 y 1 (Nunca ser 0 ni 1) Leyendo el valor de la variable sucesivas veces, se puede obtener una sucesin de nmeros aleatorios. No es necesario ejecutar la instruccin Randomize Timer cada vez que se quiera obtener un dato de la variable Rnd. Un ejemplo. Generador de nmeros para la Lotera Primitiva Supongamos que tenemos un formulario con una etiqueta de nombre Label1, un botn de comando de nombre Command1. Cuando hagamos click sobre el botn de comando deber generar un nmero comprendido entre el 1 y el 49. En el procedimiento click de Command1 pondremos el siguiente cdigo: Private Sub Command1.click Randomize Timer A = Rnd A = Rnd * 100 A = CInt(A) Do While A > 49 A = A - 49 Loop Do While A < 1 A = A + 49 Loop Label1.caption = A End Sub Realice este pequeo programa, con la instruccin Randomize Timer y sin ella. Funciones con fechas.

Tatiana Robles Crisstomo

Pgina 13

Tipos De Declaracin de Variables


Las fechas son cadenas especiales. Visual Basic sabe obtener y tratar la informacin relativa a la fecha y la hora. Dispone para ello de una declaracin de variable: Date. Una variable declarada como date puede contener una fecha, una fecha y una hora o una hora solamente. Date Devuelve la fecha de hoy. Esta fecha la toma del reloj del ordenador. Time Devuelve la hora actual. Now Devuelve la fecha y hora actual. WeekDay Devuelve el da de la semana (En nmero, 1=Domingo, 2=Lunes,...) Day Obtiene el da, a partir de una fecha Month Obtiene el mes a partir de una fecha. Year Obtiene el ao a partir de una fecha. Hour Obtiene la hora a partir de una hora Minute Obtiene el minuto a partir de una hora. Second Obtiene el segundo a partir de una hora. DateAddAade un intervalo de tiempo a una fecha DateDiff Obtiene el intervalo de tiempo entre dos fechas DatePart Devuelve una parte de una fecha (semana, trimestre, etc.) DateSerial Compone una fecha a partir de parmetros relativos TimeSerial Compone una hora a partir de parmetros relativos. DateValue Devuelve una fecha a partir de un dato que se le parezca y VB pueda obtener de l una fecha vlida Mediante estas instrucciones podemos obtener el dato necesario de una fecha u hora. Por ejemplo, para obtener el da de hoy solamente: Da = Day (Now)Da ser un nmero El da de la semana lo obtendramos Diasemana = WeekDay (Now) Diasemana ser un nmero Tatiana Robles Crisstomo Pgina 14

Tipos De Declaracin de Variables


DateValue, una instruccin que le sacar mucho provecho Fecha = DateValue (120796) Fecha = DateValue (12 07 96) Fecha =12/07/96 Funcin FORMAT Esta funcin permite presentar cadenas de numricas o fechas de una determinada forma. Permite establecer el Formato de esa cadena. Si recurre a la ayuda de VB acerca de esta funcin se va a enterar muy poco de lo que puede dar de s. La sintaxis que presenta es : Format(expresin[, formato[, primerdadesemana[, primerasemanadelao]]]) Lo mejor que puede hacer con esta definicin de la sintaxis de Format es olvidarla. No le aclara mucho lo que se puede hacer con Format. La funcin Format se usa para poner una fecha en un determinado formato. Con la expresin : FechadeHoy = Format (Now, "yyyy-mm-dd") la variable FechadeHoy tendr el valor 1998-05-21, que se refiere al da 21 de mayo de 1998, segn el formato recomendado por la norma ISO-8601 para la presentacin de fechas. Si hubisemos puesto la expresin FechadeHoy = Format (Now, "dd/mm/yy") , la variable FechadeHoy contendra el valor 21/05/98 referido al da citado. Las posibilidades de Format llegan tambin al campo de las cadenas numricas. Por ejemplo la cifra 123456 se transformar en las siguientes expresiones, segn como empleemos la funcin Format Variable = Format(123456, "Currency") Variable = 123.456 Pts Variable = Format(123456, "Standard") Variable = 123.456,00 Veamos ahora con un poco mas de conocimiento la sintaxis de Format Variable = Format (expresin[, formato[, firstdayofweek[, firstweekofyear]]]) Donde expresin es una cadena o fecha vlida

Tatiana Robles Crisstomo

Pgina 15

Tipos De Declaracin de Variables


formato es uno de los formatos predefinidos (Standard, Currency, etc. Vea mas abajo) firstdayofweek. Especifica el primer da de la semana. Puede tomar uno de estos valores o constantes : Constante Valor Descripcin vbUseSystem 0 El especificado en el sistema operativo. VbSunday 1 Domingo (valor por defecto) vbMonday 2 Lunes vbTuesday 3 Martes vbWednesday 4 Mircoles vbThursday 5 Jueves vbFriday 6 Viernes vbSaturday 7 Sbado firstweekofyear Especifica cual es la primera semana del ao. Puede tomar uno de los siguientes valores o constantes : Constante Valor Descripcin vbUseSystem 0 Usa el valor del sistema operativo vbFirstJan1 1 La primera semana es la que contiene al da 1 de Enero(Valor por defecto vbFirstFourDays 2 La primera semana es la que contiene al menos, 4 das de ese ao (Rec. ISO - 8601) vbFirstFullWeek 3 La primera semana es la que tiene todos sus das en ese ao No se complique la vida con el tema del primer da de la semana ni la primera semana del ao. No lo usar con frecuencia. Centrmonos mas en el parmetro Formato. Puede tomar muchos valores. Veamos los principales. Primero para nmeros Tatiana Robles Crisstomo Pgina 16

Tipos De Declaracin de Variables


Observe que usamos la expresin Variable =Format (1234567,"Formato") para todos los ejemplos de nmeros. Para poner los nmeros separados por millares : Variable = Format(1234567, "##,###,###") Variable = 1.234.567 (Cada carcter # indica que ah va un nmero. El separador debe ser una coma, no un punto, aunque esto depende del idioma que est usando) Puede poner una de estas expresiones, eso si, siempre entre comillas dobles : General Number Muestra el nmero tal como lo tecle Currency En formato de la moneda de su sistema operativo Fixed Sin separador de millar y dos decimales (1234567,00) Standard Con separador de millares y dos decimales (1.234.567,00) Percent Multiplica el nmero por cien y lo presenta cono porcentaje(123456700,00%) Scientific Usa notacin cientfica (1,23E+06) . Para fechas (Observe que usamos el ejemplo Format(Now, "Formato") y Now = 21/07/98 a las 22:16:00 y pico) General Date 21/07/98 22:16:00 Long Date martes 21 de julio de 1998 Medium Date 21-jul-98 Short Date 21/07/98 yyyy-mm-dd 1998-05-21 yy-mm-dd 98-07-21 Long Time 22:19:53

Tatiana Robles Crisstomo

Pgina 17

Tipos De Declaracin de Variables


Medium Time 10:20 PM Short Time 22:20 hh :mm :ss 22 :21 :29 hh :mm 22 :21 Format dispone de mas opciones. Sera muy largo explicarlas aqu. Para mas informacin, en la WEB de Microsoft puede encontrar mas formatos posibles. MATRICES Cuando utilizamos varias variables que tienen un significado similar para nosotros, pero que son distintas (Por ejemplo, el nombre de los alumnos de una clase) podemos utilizar una matriz. Esta matriz est formada por tantos elementos como alumnos tenga la clase. El nombre asociado a cada uno de los elementos de la matriz puede ser: Alumno (n) Donde n es el nmero por orden de lista de ese alumno. Las matrices normalmente comienzan a numerar por el nmero 0. Este comienzo puede no ser el mas apropiado para la variable que estamos planteando, pues ningn alumno tiene el nmero de orden 0. Para hacer que una matriz comience a numerar por el 1 se debe definir mediante la instruccin: Option Base 1 que debe colocarse al comienzo del mdulo o formulario donde declaremos la matriz. Para declarar la matriz se hace como con todas las variables, especificando entre parntesis el nmero de elementos que componen la matriz: Dim Alumno (25) as String Hemos declarado que la variable alumno es una cadena, y que hay 25 elementos en esa matriz. Una matriz tambin se puede declarar de la siguiente forma : Dim Alumno(1 To 25) as String

Tatiana Robles Crisstomo

Pgina 18

Tipos De Declaracin de Variables


Donde le decimos que la variable Alumno tiene 25 elementos, que el primero tiene el ndice 1 y el ltimo tiene el ndice 25. Pero imaginemos que queremos meter en la misma matriz el nombre, primer apellido y segundo apellido del alumno. Necesitaremos declarar una matriz de 25 por 3. Como todos los elementos sern cadenas de caracteres, podemos declararla de la siguiente forma: Dim Alumno (1 To 25, 1 To 3) As String De esta forma, el primer apellido del alumno que ocupa el puesto nmero 15 de la clase, ser el elemento: Alumno (15, 2) Podemos definir matrices de dimensin superior a dos. Podemos llegar a un mximo de 60 dimensiones. Una matriz de 5 dimensiones se declarara: Dim Variable ( 1 To N, 1 To M, 1 To P, 1 To Q, 1 To R) entendiendo que hay N, M, P, Q y R elementos en cada una de las dimensiones respectivamente. Una variable ya declarada como una matriz puede redimensionarse a lo largo del programa mediante la instruccin ReDim ReDim Alumno (1To 25) Mediante esta instruccin, estamos ReDimensionando una matriz ya declarada. No se puede redimensionar una matriz inexistente. Mediante la declaracin 1 To 25 le estamos diciendo que el primer elemento de la matriz es el 1, independientemente de lo que hayamos puesto en OPTION BASE. Si se redimensiona simplemente con el nmero de elementos : ReDim (25) le estamos diciendo que tiene 25 elementos, pero que el primero sea el 0 el 1 depende de haber puesto OPTION BASE 0 u OPTION BASE 1. Una matriz puede redimensionarse cuantas veces se quiera a lo largo de la aplicacin, pero esa redimensin no puede afectar al nmero de dimensiones de la matriz. Si redimensionamos la matriz perder la informacin existente. Para evitar perder la informacin presente en la matriz, debe utilizar la sentencia ReDim Preserve. Tatiana Robles Crisstomo Pgina 19

Tipos De Declaracin de Variables


Si usa la palabra clave Preserve en matrices de dimensin superior a 1, va a encontrarse con comportamientos no esperados. Como podr ver en la Ayuda de VB, usando ReDim Preserve slo puede cambiar el tamao de la ltima dimensin de matriz y no puede modificar en ningn momento el nmero de dimensiones. NO es cierto del todo. S lo podr hacer una sola vez. Respecto a cambiar el nmero de dimensiones, si ha declarado la matriz con unas dimensiones determinadas, ya no podr cambiar las dimensiones ni con ReDim ni con ReDim Preserve. Le saldr un error que dice que las dimensiones de la matriz ya han sido declaradas. Pero si ha declarado la matriz sin dimensiones : Dim MiMatriz() puede cambiar las dimensiones Dim MiMatriz (1 To 5, 1 To 9) y volver a cambiarlas Dim MiMatriz (1 To 8, 1 To 15, 1 To 6) Observe que no solamente la hemos cambiado dos veces de dimensiones (la primera a 2 y la segunda a 3), sino que tambin hemos cambiado el nmero de elementos en cada dimensin. Si hubisemos utilizado ReDim Preserve solamente podramos haber usado la primera de las dos lneas anteriores : ReDim Preserve MiMatriz (1 To 5, 1 To 9) pero ya no podramos volver a cambiar el nmero de dimensiones con la segunda lnea. Nos dara un error. Con ReDim podemos cambiar el nmero de elementos de cada dimensin cuantas veces queramos. Por ejemplo, podemos redimensionar MiMatriz de las siguiente forma : ReDim MiMatriz (1 To 5, 1 To 9) ReDim MiMatriz (1 To 15, 1 To 20) ReDim MiMatriz (1 To 25, 1 To 30) ........................... Si hubisemos empleado ReDim Preserve, podramos cambiar los elementos de todas las dimensiones de la matriz una vez : Tatiana Robles Crisstomo Pgina 20

Tipos De Declaracin de Variables


ReDim Preserve (1 To 5, 1 To 9) a partir de ahora, solamente podemos cambiar los elementos de la ltima dimensin : ReDim Preserve (1 To 5, 1 To 20) ReDim Preserve (1 To 5, 1 To 30) es decir, no podremos hacer esto : ReDim Preserve (1 To 10, 1 To 30) donde se seala en negrita el error. Esto no causa ningn error en una matriz de una dimensin, ya que si la matriz tiene slo una dimensin, puede cambiar el tamao de esa dimensin porque es la nica y la ltima. Cuando a lo largo de la aplicacin se va redimensionando una matriz, podemos llegar la circunstancia de que, en un momento determinado, no sepamos las dimensiones de esa matriz. Para conocer el ndice mximo y mnimo de una matriz se usan las funciones UBound y LBound. UBound devuelve el mayor subndice disponible para la dimensin indicada de una matriz. Sintaxis UBound(nombredelamatriz[, dimensin]) LBound devuelve el mayor subndice disponible para la dimensin indicada de una matriz. Sintaxis LBound(nombredelamatriz[, dimensin]) Ejemplo Tengamos una matriz llamada Mimatriz, de tres dimensiones. En un momento de la aplicacin se ejecut la siguiente instruccin vlida : ReDim Mimatriz (1 To 100, 0 To 3, 5 To 20) En otro momento queremos tener el control de los ndices de esa matriz, y queremos averiguar el ndice menor y mayor de cada una de sus dimensiones : (IID1= Indice Inferior Dimensin 1, ISD 1 = Indice Superior Dimensin 1, etc. ) IID 1= LBound (Mimatriz, 1) IID1 = 1

Tatiana Robles Crisstomo

Pgina 21

Tipos De Declaracin de Variables


ISD1 = UBound (Mimatriz, 1) ISD1 = 100 IID 2= LBound (Mimatriz, 2) IID1 = 0 ISD2 = UBound (Mimatriz, 2) ISD1 = 3 IID 1= LBound (Mimatriz, 3) IID1 = 5 ISD1 = UBound (Mimatriz, 3) ISD1 = 20 Los controles comunes - CommandButton, Label, TextBox, etc.-, no se pueden eliminar de la caja de herramientas) Formulario: Este Formulario es la interface grfica de su aplicacin, sobre el que podr aadir los controles que necesite. Lo veremos mas adelante con todo detalle. PROPIEDADES. Name Nombre Define al objeto durante la ejecucin del programa. Se introduce en tiempo de diseo y no se puede variar durante la ejecucin. Nombre por defecto: Form1 (Form2 y sucesivos) Este nombre por defecto debe cambiarse, (debera cambiarse por norma en el momento de introducir el formulario), ya que de no hacerlo corremos el riesgo de borrar el cdigo existente de otro formulario del mismo nombre en el momento de guardar la aplicacin. Caption Ttulo Es el texto que aparecer en la barra de Ttulo cada vez que aparezca en pantalla este formulario. No tiene otra funcin dentro del programa. El programa no accede a este formulario por el ttulo, sino por el nombre. Puede cambiarse en tiempo de ejecucin. NOTA.- No confundir Nombre (Name) con Ttulo (Caption) Control BoxControl "menos" del Formulario Valor por defecto : True Propiedad booleana que admite los valores de true (verdadero) o False (Falso). Si esta propiedad es True, aparecer en la esquina superior izquierda el "menos" para desplegar el men de control de este formulario. Si esta propiedad se pone como False, no existir dicho "menos" y por tanto no se puede desplegar dicho men.

Tatiana Robles Crisstomo

Pgina 22

Tipos De Declaracin de Variables


MinButton MaxButton Valor por defecto: True Botones (flechas) de minimizar y maximizar este formulario. Son igualmente propiedades booleanas, que admiten el valor True o False. Si estn en true, aparecer la flecha correspondiente. Si estn en False, no aparecer dicha flecha. Deben configurarse de una u otra forma, dependiendo si se quiere minimizar / maximizar este formulario durante la ejecucin. Nota. En los formularios MDI child, es necesario poner a true las propiedades ControlBox, MinButton y MaxButton para poder maximizar el formulario hijo. De no ponerlas a true, s se pretende maximizar el formulario hijo, (Propiedad WindowState=2) el formulario no aparece. BorderStyle Tipo de borde Define el tipo de borde que tendr el formulario durante la ejecucin. No se puede cambiar en tiempo de ejecucin, Admite los siguientes valores: 0 - None El formulario no tiene borde alrededor 1 - Fixed Single El formulario tendr un borde fino, y no podr cambiarse su tamao durante el tiempo de ejecucin. Con este valor, el formulario puede tener un men de control, barra de ttulo y botones de maximizar y minimizar. Solo podr cambiarse de tamao utilizando estos botones. 2-Sizable El formulario tendr borde grueso, y se podr cambiar su tamao en tiempo de ejecucin mediante los botones de maximizar y minimizar, y mediante el arrastre de uno de los bordes con el ratn. 3 - Fixed Dialog El formulario tendr borde grueso, y no se podr redimensionar durante la ejecucin. No puede tener los botones de maximizar ni minimizar. 4 - Fixed ToolWindow

Tatiana Robles Crisstomo

Pgina 23

Tipos De Declaracin de Variables


En las versiones de 16 bits de Windows y Windows NT 3.51 y anteriores se comporta como Fixed Single. No puede cambiar de tamao. En Windows 95 muestra el botn Cerrar, y el texto de la barra de titulo aparece con un tamao de fuente reducido. El formulario no aparece en la barra de tareas de W95. 5 - Sizable ToolWindow En las versiones de 16 bits se comporta como Sizable. En W95 muestra el botn Cerrar y el texto de la barra de titulo aparece con un tamao de fuente reducido. El formulario no aparece en la barra de tareas de W95. Valor por defecto: 2 . Sizable Nota: Al cambiar a determinados valores, las propiedades MaxButton y MinButton se ponen a False. Pueden cambiarse a True posteriormente. AppearanceApariencia Valor por defecto: 3D Admite los valores 0 (=Flat, plano) y 1 (=3D) Si tiene el valor 1 (3D), el formulario aparecer con cierto efecto tridimensional, y los controles que le introduzcamos a este formulario aparecern como esculpidos dentro de l. Con valor 0 (Flat) en esta propiedad, el formulario aparecer durante la ejecucin como una superficie plana. El color de fondo se ve afectado al cambiar esta propiedad. Si se cambia a 3D, el fondo (Backcolor) toma el color definido en Windows en el Panel de Control. Si se cambia a Flat, toma el color blanco Autoredraw Valor por defecto: False Propiedad booleana. Esta propiedad, estando en True, permite actualizar el contenido del formulario y de sus controles incluso cuando no estn visibles. Imaginemos que en este formulario existe un texto, una etiqueta (Label) o caja de texto (Text Box) cuyo texto se haya cambiado, bien por programa, bien por una entrada, mientras este formulario no estaba visible. Lo mismo podemos decir de las propiedades de cualquier otro control. Si esta propiedad Autoredraw est en False, al hacer visible este formulario, aparecer igual que cuando se ocult. Si esta propiedad est en True, aparecer actualizado. Backcolor Color del fondo Establece el color del fondo del formulario. Puede cambiarse en tiempo de ejecucin. Valor por defecto: El establecido en el Panel de Control de Windows. Tatiana Robles Crisstomo Pgina 24

Tipos De Declaracin de Variables


ClipControls Valor por defecto: False Propiedad Booleana. Establece si un evento Paint vuelve a dibujar el objeto entero (True) o si solamente dibujan las partes que han sufrido cambios (False) DrawMode Establece un valor que determina el aspecto de la salida de un mtodo grfico o el aspecto de un control Shape o Line. Ver mas adelante los efectos de esta propiedad. DrawStile Valor por defecto : 0 Establece el estilo de lnea de la salida de mtodos grficos: Valores: 0 - Lnea continua 1 - Rayas 2 - Puntos 3 - Raya-Punto 4 - Raya - Punto - Punto 5 - Transparente 6 - Continuo interior. DrawWidth Valor por defecto: 1 Establece el ancho de una lnea dibujada. El valor debe expresarse en pixeles. Enabled Activado Valor por defecto: True Propiedad booleana. Si est en True, el formulario est activado y se puede interactuar con l. Si est en False, se desactiva el formulario, impidiendo de esta forma, que se pueda trabajar con l. ForeColor Valor por defecto: Negro Establece el color del primer plano del formulario. Es el color que tendrn las letras si escribimos en l, o los dibujos, si lo que hacemos es dibujar. En tiempo de diseo, determina el color de la rejilla,. FillStyleTipo de relleno Valor por defecto: 2 Tatiana Robles Crisstomo Pgina 25

Tipos De Declaracin de Variables


Establece el modo de rellenar controles Shape, o figuras (crculos o cuadrados) creados con los mtodos grficos Circle y Line. Valores: 0 - Continuo 1 - Transparente 2 - Lnea Horizontal 3 - Lnea Vertical 4 - Diagonal hacia arriba 5 - Diagonal hacia abajo 6 - Cruzado 7 - Diagonal cruzada FillColorColor de relleno Especifica el color del relleno contemplado en FillStyle. FontTipo de letra Valor por defecto: El determinado en la personalizacin. Especifica el tipo y tamao de la letra que se usar en el formulario. Al seleccionar esta propiedad en la ventana de propiedades, aparece un cuadro de dialogo donde se eligen ambos parmetros. Cuando introduzca nuevos controles en el Formulario, la propiedad Font de estos controles tomar el valor que tenga esta propiedad en el Formulario. Puede servirle este pequeo truco para utilizar en todos los controles una determinada fuente sin tener que teclearla para cada control. FontTranparentTexto Transparente Valor por defecto: True Establece si el texto o grfico de fondo del formulario se muestra (True) o no se muestra entre los caracteres de texto escritos en el propio formulario. FontSize Tamao de letra Establece el tamao de la letra. Esta propiedad, que puede variarse en tiempo de ejecucin, vara solamente el tamao, y no el tipo de letra. El tamao debe expresarse en puntos. Mximo, 2160 puntos. FontBold, FontItalic, FontStrikethru, FontUnderline Tatiana Robles Crisstomo Pgina 26

Tipos De Declaracin de Variables


Permiten, en tiempo de ejecucin, cambiar un texto a negrita, cursiva, tachado y subrayado. Son propiedades booleanas True / False HeightAltura Valor por defecto: No existe Define la altura del formulario. El valor de esta propiedad no se introduce normalmente como un dato numrico, sino que toma el valor automticamente, dependiendo de las dimensiones del formulario durante el tiempo de diseo. Puede cambiarse durante el tiempo de ejecucin. HelpContextID Valor por defecto: 0 Establece un nmero de contexto asociado para este formulario. Este nmero se aplica para determinar la ayuda interactiva asociada a este formulario. Vea mas adelante, el tema Ayuda de Windows. Puede tomar los siguientes valores : 0 - No se especifica nmero de contexto >0 Un entero que especifique un contexto vlido. IconIcono Esta propiedad define el icono que va a representar a este formulario cuando est minimizado. Si el formulario es el formulario padre o formulario de inicio de una aplicacin, este icono es el que toma el Asistente de Instalacin para colocarlo como icono de apertura del programa en el grupo de programas Windows correspondiente. Como valor de esta propiedad se le puede asignar directamente el icono o el nombre de un archivo (con su path correspondiente) que lo contiene, hacindolo directamente sobre la caja de propiedades. Valor por defecto: el icono que se le haya programado en la personalizacin. KeyPreview Valor por defecto: False Propiedad Booleana. Cuando un formulario tiene dentro de s varios controles, uno de ellos es el que est activo. En estas condiciones, si se pulsa una tecla, esa pulsacin la recibe en primer lugar el control que est activo, y si ste no la procesa, pasa esa pulsacin al formulario. Para hacer que esa pulsacin pase directamente al formulario, debe ponerse esta propiedad en True. LeftBorde Izquierdo Valor por defecto: No existe Indica la posicin del borde izquierdo del formulario. Normalmente no se introduce como valor numrico, sino que lo toma automticamente de la Tatiana Robles Crisstomo Pgina 27

Tipos De Declaracin de Variables


posicin que tenga el formulario en el tiempo de diseo. Puede cambiarse en tiempo de ejecucin, para mover el formulario. LinkMode Valor por defecto: 0 Permite que una aplicacin destino inicie una conversacin DDE con el formulario (origen de datos). Puede tomar los siguiente valores: 0 - No hay interaccin DDE 1 - Source. Indica que este Formulario es origen de una comunicacin DDE. El dato que se va a traspasar en esa comunicacin DDE estar en un TextBox, en un Label o en un PictureBox de este Formulario. LinkTopic Establece el tema al que este formulario va a responder a una conversacin DDE, cuando funciona como origen. Es por este tema por el que se debe llamar a este formulario cuando acta de origen en una conversacin DDE MDIChild Valor por defecto: False Establece que este formulario es un formulario Hijo dentro de un formulario MDI. No se puede cambiar en tiempo de ejecucin. Es una propiedad booleana True = es formulario hijo False =No lo es MouseIcon Valor por defecto: ninguno Establece un icono personalizado para el puntero del ratn cuando est encima de este Formulario. Este icono puede ser un bit-map de los existentes en el directorio Icons de Visual Basic o cualquiera que tengamos. Si se pone 99 como valor de la propiedad MousePointer (siguiente), cada vez que el puntero del ratn pase por este Formulario, cambiar su forma y adoptar la del icono elegido. MousePointer Valor por defecto: flecha Determina la forma del puntero del ratn cuando se coloca encima del formulario. Puede elegirse uno de los punteros preestablecidos (15 en total) o el personalizado visto en la propiedad anterior. Para elegir ese icono personalizado, debemos poner en esta propiedad el valor 99. Picture Grfico Valor por defecto: No existe

Tatiana Robles Crisstomo

Pgina 28

Tipos De Declaracin de Variables


Mediante esta propiedad podemos poner un grfico como fondo del formulario. El grfico puede ser un bit-map o un fichero .ICO ScaleHeight, ScaleWidth, ScaleMode, Indican la unidad de medida de dimensin de altura y anchura del Formulario. ScaleMode indica en qu unidades de medida se van a medir esas dimensiones. Acepta Twips (1), Point(2), Pixel (3), Character (4), Pulgadas (Inch) (5), Milmetros (6), Centmetros (7). Si colocamos la propiedad ScaleMode en cualquiera de estos valores, las propiedades ScaleHeight y ScaleWidth nos vendrn dadas automticamente dependiendo del ancho del Formulario, y no se extrae si encuentra para estas propiedades valores tan peregrinos como 4815 y 7423. Al haber elegido la unidad de medida, los valores de ancho ( ScaleWidth) y alto (ScaleHeight) sern los que tengan que ser, medidos en la unidad que hemos elegido. Podemos elegir una cifra para el ancho y el alto del Formulario de forma que podamos controlar mejor las distintas posiciones que van a ocupar en l los controles, los textos o los dibujos. Podemos poner, por ejemplo, que el Formulario mida 400 de ancho ( ScaleWidth = 400) y 300 de alto (ScaleHeight = 300) forzndole estas propiedades, bien en tiempo de diseo en la caja de propiedades, o en tiempo de ejecucin mediante cdigo. Entonces sabemos que el formulario, independientemente de las dimensiones fsicas que tenga sobre la pantalla, medir 400 de ancho y 300 de alto, y si en estas condiciones queremos colocar un control o un dibujo justo en el medio del Formulario, sabemos que tenemos que colocarle en las coordenadas 200, 150. Que unidad de medida estaremos utilizando entonces en el Formulario ? Unas definidas por el usuario (distintas para el ancho y el alto) que sern las necesarias para que el Formulario mida de ancho lo que le hayamos puesto en la propiedad ScaleWidth y de alto lo que le hayamos puesto en la propiedad ScaleHeight. Observe que la propiedad ScaleMode se ha cambiado automticamente a User (0) al introducir las dimensiones de ancho y alto que nosotros queremos. Estas unidades de medida afectarn a los controles que metamos en este Formulario. Se medirn en su ancho y alto con la unidad de medida definida para el ancho y alto del Formulario. Lgicamente tambin afectar a las propiedades Left y Top de los controles, pero estas propiedades se vern afectadas adems por las propiedades ScaleLeft y ScaleTop del Formulario que se vern a continuacin. ScaleLeft, ScaleTop

Tatiana Robles Crisstomo

Pgina 29

Tipos De Declaracin de Variables


Estas propiedades, medidas en la unidad de medida elegida para el ancho y alto mediante las propiedades ScaleMode, ScaleWidth y ScaleHeight anteriores, expresan las coordenadas iniciales de la parte izquierda y de la parte superior respectivamente del Formulario. Estas propiedades no afectan a la posicin del Formulario en la pantalla (Si est maximizado seguir ocupando toda la pantalla, si est en "Normal" ocupar el mismo sitio que se dio en tiempo de diseo). Supongamos que se le asigna a un Formulario, las propiedades ScaleWidth = 400, y ScaleHeight = 300. Si colocamos un control justamente en el centro del Formulario tendr sus propiedades Top =150 y Left=200. Si ponemos ahora las propiedades del Formulario ScaleLeft a 30 y ScaleTop a 10, ese control, para seguir en el centro del Formulario deber tener sus propiedades Top a 160 (150 + 10) y Left a 230 (200 + 30). Recuerde que las medidas de un formulario crecen, desde la esquina superior izquierda, segn avanzamos hacia abajo y hacia la derecha. Como aclaracin de las relaciones entre distintas unidades de medida, puede ver en la siguiente table la correspondencia entre cada una de ellas y la unidad imaginaria Twip. 1 Point=20 Twips ; 1Pixel=15 Twips : 1 Charecter=240 Twips ; 1 Inch (pulgada) =1440 Twips 1mm=56,52 Twips 1 cm=566 Twips Tag Valor por defecto: No existe Esta propiedad no la usa directamente Visual-Basic. Sirve para asociar al formulario informacin adicional para fines externos a la programacin. Pero tambin le puede servir para almacenar en ella una variable para que la use un cdigo ajeno al formulario. El autor de estos apuntes tiene por costumbre utilizar la propiedad Tag del formulario inicial para guardar el parmetro que se le pasa a algunos programas para acceder a ellos con unos determinados privilegios. Resumiendo, est ah para lo que el programador quiere. TopPosicin del borde superior Valor por defecto: No existe Esta propiedad establece la posicin del borde superior del formulario. Normalmente no se introduce como valor numrico sino que lo toma automticamente de la posicin que tenga el Formulario durante el tiempo de diseo Este valor puede cambiarse durante la ejecucin para, conjuntamente con Left, variar la posicin del Formulario. Los valores de Top y Left definen la esquina superior izquierda del Formulario. Visible Valor por defecto: True Tatiana Robles Crisstomo Pgina 30

Tipos De Declaracin de Variables


Propiedad Booleana. Asignndole el valor True la pantalla es visible, y asignndole el valor False, no se ve. Este valor puede cambiarse durante el tiempo de ejecucin para ocultar y hacer visible el formulario. WidthAncho Valor por defecto: No existe Define la anchura del formulario. Normalmente no se introduce como valor numrico sino que lo toma automticamente del tamao que tenga el formulario durante el tiempo de diseo. Juntamente con Height define el tamao del formulario. Puede cambiarse durante el tiempo de ejecucin. WindowState Establece el estado en el que aparecer el formulario cuando se activa y presenta en pantalla. Admite tres opciones: 0 - Normal El formulario recupera la posicin y tamao que tena en el tiempo de diseo. 1 - Minimizado El formulario aparece minimizado, representado por su icono. 2 - Maximizado El formulario aparece maximizado, ocupando toda la pantalla. PROCEDIMIENTOS ActivateActivacin ClickClick DblClickDoble click DeactivateDesactivacin DragDropArrastrar y soltar DragOverArrastrar por encima GotFocusObtener el foco KeyDown Mantener pulsada una tecla KeyPressPulsar una tecla KeyUpSoltar una tecla LinkErrorError de enlace LinkExecuteEjecucin de un enlace de datos LinkOpenRomper el enlace LoadCargar el formulario LostFocusPerder el foco MouseDownPulsar una tecla del ratn MouseMoveMover el ratn (Detecta la posicin del ratn sobre el formulario) MouseUpSoltar una tecla del ratn PaintPintar QueryUnloadConfirmacin de descarga ResizeCambio de tamao Tatiana Robles Crisstomo Pgina 31

Tipos De Declaracin de Variables


UnloadDescargar el formulario Un Formulario sirve, fundamentalmente, de contenedor de controles. Es la ventana de Windows de nuestra aplicacin. Una aplicacin puede tener varios Formularios y dentro de cada uno de ellos, los controles necesarios para cada paso o estado de la aplicacin. Un Formulario puede servir tambin como soporte de textos o dibujos. CONTROLES Una vez introducido un Formulario, se pueden colocar los objetos (controles) que forman parte de la aplicacin. Estos controles se irn viendo en prximos captulos. Los controles, lo mismo que el Formulario, tienen Propiedades y Procedimientos. COMMAND BUTTONBOTON DE COMANDO El Command Button es un objeto que sirve para introducir datos a travs de la pantalla. El Botn de Comando tiene la siguiente forma:

Cancel Establece un valor que indica si un botn de comando es el botn Cancelar de un formulario. Es una propiedad booleana, y admite los valores True o False. Puede utilizar la propiedad Cancel para dar al usuario la opcin de cancelar los cambios que no se han hecho efectivos y devolver el formulario a su estado anterior. En un formulario slo puede haber un botn de comando con la propiedad Cancel = True. Default Establece un valor que determina el control CommandButton que es el botn de comando predeterminado de un formulario. Slo un botn de comando de un formulario puede ser el botn de comando predeterminado. Cuando Default se define a True para un botn de comando, se define automticamente a False para el resto de los botones de comando del formulario. Cuando la propiedad Default del botn de comando est establecida a True y su formulario primario est activo, el usuario puede elegir el botn de comando Tatiana Robles Crisstomo Pgina 32

Tipos De Declaracin de Variables


(invocando su evento Click) presionando ENTRAR. Cualquier otro control que tuviera el enfoque no recibe evento de teclado (KeyDown, KeyPress o KeyUp) de la tecla ENTRAR a menos que el usuario haya movido el enfoque a otro botn de comando del mismo formulario. En este caso, al presionar ENTRAR se elige el botn de comando que tiene el enfoque en lugar del botn de comando predeterminado. DragIcon Establece el icono que se presenta como puntero en una operacin de arrastrar y colocar. DragMode Establece un valor que determina si se usa el modo de arrastre manual o automtico en una operacin de arrastrar y colocar. Los valores posibles de nmero son: 0 Manual (Predeterminado) 1 Automtico Enabled Habilitado Propiedad Booleana que habilita o deshabilita el botn. Cuando est deshabilitado (Enabled = False), el botn no tiene efecto, y su apariencia vara, presentando un tono plido tanto en su cuerpo como en su ttulo. Puede variarse en tiempo de ejecucin. Font Fuente Es el tipo de letra para el ttulo. Puede cambiarse en tiempo de ejecucin. Height Altura Establece la altura del botn. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de las dimensiones que se le den al botn en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. HelpContextID Establece un nmero de contexto asociado para este control. Este nmero se aplica para determinar la ayuda interactiva.

Tatiana Robles Crisstomo

Pgina 33

Tipos De Declaracin de Variables


Puede tener los siguientes valores: 0 = No se especifica nmero de contexto >0 Un entero que especifica un contexto vlido. Index Indice En el caso de que se tengan varios botones que realicen una funcin similar (Las teclas numricas de una calculadora, p.e.) puede hacerse un array con estos botones de comando. Todos tendrn el mismo nombre, y se diferencian por un ndice. Esta propiedad Index toma el nmero de ese ndice. Left Posicin de su parte izquierda. Indica la posicin del botn, concretamente de la parte izquierda del mismo. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de la posicin que se le de al botn en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. MouseIconIcono para el puntero del ratn Determina el icono que presenta al puntero del ratn cuando pasa por encima del botn, cuando se especifica en la propiedad MousePointer que el puntero del ratn es el definido por el usuario. (Custom) MousePointer Puntero ratn Determina la forma del puntero del ratn cuando ste pasa por encima del botn. Puede elegirse uno de los punteros preestablecidos (15) o incluso uno diseado especialmente. Para especificar que el puntero es uno diseado especialmente, hay que poner a esta propiedad el valor 99 (Custom), y en este caso aparecer el icono determinado por la propiedad MouseIcon TabIndex N de orden para tabulador Cuando disponemos de varios controles en un mismo formulario, solamente uno de ellos tiene el foco. Esta expresin de tener el foco significa que ese control est remarcado y en esa condicin, si pulsamos la tecla ENTER hara el mismo efecto que hacer click con el ratn en ese control. Esto es necesario, ya que existen ordenadores que no disponen de ratn (tpico de algunos porttiles). En estos casos, para elegir uno u otro control debemos pulsar repetidas veces la tecla TABulador. El foco ir cambiando de uno a otro control Tatiana Robles Crisstomo Pgina 34

Tipos De Declaracin de Variables


(pueden ser controles de distinto tipo) cada vez que pulsemos la tecla TABulador. Esta propiedad TabIndex marca el orden que seguir el foco a travs de cada control. TabStopSale del control de la tecla TAB Propiedad booleana. Cuando esta propiedad est a False, el botn no tomar el foco cuando se pulse la tecla del Tabulador. Sin embargo sigue manteniendo el ndice de la propiedad TabIndex descrita anteriormente. Puede cambiarse en tiempo de ejecucin. Esto nos permite descartar algn botn de tomar el foco, cuando por facilidad para el usuario, sea conveniente en determinados puntos del programa. Tag Esta propiedad no la usa directamente Visual-Basic. Sirve para asociar a este control alguna informacin adicional para fines externos a la programacin. Similar a la del formulario. Top Indica la coordenada de la parte superior del control. Puede variarse durante el tiempo de ejecucin. Esta propiedad, juntamente con Left definen la esquina superior izquierda del botn de comando. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de la posicin que se le den al botn en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. VisibleVisible Propiedad Booleana. Si es true, el botn se ve, si es False el botn no se ve. Puede cambiarse en tiempo de ejecucin. De hecho, es un recurso muy usado para dejar visibles en un formulario, solamente los objetos (controles) necesarios. WhatThisHelpID (Propiedad, Windows 95) Devuelve o establece un nmero de contexto asociado a un objeto. Se utiliza para dotar a las aplicaciones de Ayuda interactiva con el men emergente Qu es esto? de la Ayuda de Windows 95. Width Ancho Define el ancho del botn. Con Height determina la dimensin del botn. Tatiana Robles Crisstomo Pgina 35

Tipos De Declaracin de Variables


PROCEDIMIENTOS DEL BOTON DE COMANDO Click DragDrop DragOver GotFocus KeyDown KeyPress KeyUp LostFocus MouseDown MouseMove MouseUp LABEL ETIQUETA Una etiqueta es un control que nos permite presentar un texto. La etiqueta debe usarse en aquellos casos en los que exista una informacin esttica o dinmica que no deba ser cambiada por el operador. Puede adoptar estas formas: con borde tridimensional, borde plano o sin borde, y el texto justificado a la izquierda, a la derecha o centrado.

Se ha incluido la trama para poder observar los lmites de la etiqueta sin borde. PROPIEDADES AlignmentJustificacin Establece si el texto se justifica a la izquierda, a la derecha, o se centra sobre la etiqueta. Appearance Apariencia Plana o tridimensional. AutosizeTamao Propiedad booleana. Si se pone a True, el tamao de la etiqueta se ajusta al texto que contiene. BackcolorColor de fondo Es el color de fondo de la etiqueta. Puede cambiarse en tiempo de ejecucin. BackStyle Tipo de fondo Opaco o transparente. Cuando se selecciona transparente, se ve solamente el texto de la etiqueta. Cuando se selecciona opaco, este texto se v sobre un fondo gris. BorderStyleTipo de borde Tatiana Robles Crisstomo Pgina 36

Tipos De Declaracin de Variables


Sin borde o con borde. En caso de haber elegido en la propiedad Appearance el modo tridimensional, y eligiendo con borde en esta propiedad, el aspecto adopta una forma como incrustada en el formulario. CaptionTtulo Es el texto de la etiqueta. Puede cambiarse en tiempo de ejecucin, lo que permite usar la etiqueta como dispositivo de presentacin de textos. No se puede cambiar por el procedimiento de arrastrar con el ratn, por lo que es el control adecuado cuando se quiere presentar un texto que no se pueda cambiar por el operador. DataField DataSource Establecen la base de datos y el campo donde est el texto Datos que se llevar a la propiedad Caption. Estas propiedades permiten presentar los datos de una Base de Datos mediante un procedimiento muy sencillo, con la ayuda de un control Data (Se ver mas adelante) DragIcon Establece el icono que se presenta como puntero en una operacin de arrastrar y colocar. DragMode Establece un valor que determina si se usa el modo de arrastre manual o automtico en una operacin de arrastrar y colocar. Los valores posibles de nmero son: 0 Manual (Predeterminado) 1 Automtico Enabled Habilitado Propiedad Booleana que habilita o deshabilita la etiqueta Cuando est deshabilitado (Enabled = False), no tienen efecto los eventos que se produzcan sobre ella, y su apariencia vara, presentando un tono plido tanto en su cuerpo como en su ttulo. Puede variarse en tiempo de ejecucin. Font Fuente Es el tipo de letra para el ttulo. Puede cambiarse en tiempo de ejecucin.

Tatiana Robles Crisstomo

Pgina 37

Tipos De Declaracin de Variables


ForeColor Es el color de la letra de la etiqueta. Puede cambiarse en tiempo de ejecucin. Height Altura Establece la altura de la etiqueta. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de las dimensiones que se le den a la etiqueta en tiempo de diseo. Index Indice En el caso de que se tengan varios etiquetas que realicen una funcin similar puede hacerse un array con etiquetas. Todas tendrn el mismo nombre, y se diferencian por un ndice. Esta propiedad Index toma el nmero de ese ndice. Left Posicin de su parte izquierda Indica la posicin de la etiqueta, concretamente de su parte izquierda. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de la posicin que ocupaba en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. LinkItem LinkMode LinkTimeout LinkTopic Estas propiedades establecen la forma en que debe llevarse a cabo una conexin DDE con otra aplicacin. Se vern con ms detalle al estudiar los enlaces DDE MouseIconIcono del puntero del ratn MousePointer Puntero ratn Para estas propiedades es aplicable todo lo dicho para las mismas en el Botn de Comando NameNombre Es el nombre de la etiqueta con el que se le conocer a lo largo del programa TabIndex N de orden Al igual que para los botones de comando, la etiqueta tiene propiedad TabIndex. Sin embargo, una etiqueta NUNCA tomar el foco. Vea la propiedad UseMneumonic mas adelante. Tatiana Robles Crisstomo Pgina 38

Tipos De Declaracin de Variables


Tag Esta propiedad no la usa directamente Visual-Basic. Sirve para asociar a este control alguna informacin adicional para fines externos a la programacin. Top Indica la coordenada de la parte superior del control. Puede variarse durante el tiempo de ejecucin. Esta propiedad, juntamente con Left definen la esquina superior izquierda del botn de comando. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de la posicin que se le den a la etiqueta en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. UseMneumonic Devuelve o establece un valor que indica si al incluir el signo (&) en el texto de la propiedad Caption del control Label se define una tecla de acceso . Es una propiedad Booleana. Los valores que puede tomar son True o False. True (Predeterminado) Los caracteres (&) que aparezcan en el texto de la propiedad Caption definen al carcter siguiente como tecla de acceso. El signo (&) no aparece en la interfaz del control Label. False Los caracteres (&) que aparezcan en el texto de la propiedad Caption aparecen como tales en la interfaz del control Label. En tiempo de ejecucin, al presionar ALT+ la tecla de acceso definida en la propiedad Caption del control Label, el enfoque se desplaza al control siguiente al control Label en el orden de tabulacin. VisibleVisible Propiedad Booleana. Si es true, la etiqueta se ve, si es False no se ve. Puede cambiarse en tiempo de ejecucin. WhatThisHelpID (Propiedad, Windows 95) Devuelve o establece un nmero de contexto asociado a un objeto. Se utiliza para dotar a las aplicaciones de Ayuda interactiva con el men emergente Qu es esto? de la Ayuda de Windows 95. Width Ancho Tatiana Robles Crisstomo Pgina 39

Tipos De Declaracin de Variables


Define el ancho de la etiqueta. Con Height determina la dimensin de la misma. WordWrap Devuelve o establece un valor que indica si un control Label con el valor True en su propiedad AutoSize se expande vertical u horizontalmente para adaptarse al texto especificado en su propiedad Caption. Es una propiedad Booleana. Esta propiedad puede cambiarse en tiempo de ejecucin True El control Label se expande o contrae horizontal y verticalmente para adaptarse al texto y al tamao de la fuente. Contempla para la expansin horizontal la colocacin de los espacios del texto. False (Predeterminado) El texto no se ajusta a la siguiente lnea; el control Label se expande o contrae horizontalmente para adaptarse a la longitud del texto y verticalmente para adaptarse al tamao de la fuente y al nmero de lneas. Nota Si se establece False en AutoSize, el texto siempre se ajustar a la lnea siguiente, independientemente del tamao del control Label y del valor de la propiedad WordWrap. Esto puede ocultar parte del texto, ya que el control Label no se expande en ninguna direccin. PROCEDIMIENTOS DEL LABEL Click Change DbClick DragDrop DragOver LinkClose LinkError LinkNotify TEXT BOXCAJAS DE TEXTO

Las cajas de texto son los controles en los que Visual Basic presenta o introduce textos. Es por tanto un control bidireccional. Normalmente se usan para introducin de textos, o para la presentacin de aquellos que el operador pueda cambiar. Para cambiar o escribir un texto en una caja de texto, basta con conseguir que esa caja de texto tenga el foco y teclear el texto en el teclado. Esto se puede lograr, bien haciendo click con el ratn en esa caja de texto, bien con la tecla TAB, bien por programa.

Tatiana Robles Crisstomo

Pgina 40

Tipos De Declaracin de Variables


La caja de texto no se debe usar nunca para presentar textos que el operador de la aplicacin no deba cambiar. sese para ello la etiqueta, control no bidireccional, que adems tiene la ventaja de ocupar menos memoria de programa. Las cajas de texto pueden tener una o varias lneas, segn est la propiedad Multiline. La capacidad mxima de una caja de textos es de 64 Kbytes. La forma de una caja de texto es la siguiente, dependiendo de las propiedades BorderStyle y Appearance:

PROPIEDADES AlignmentJustificacin Establece si el texto se justifica a la izquierda, a la derecha, o se centra sobre la etiqueta. Esta propiedad solamente tiene efecto cuando la propiedad Multiline est a True, ignorndose en caso contrario. Es decir, permite colocar el texto justificado a la derecha cuando ese texto puede ser de varias lneas. Para una nica lnea, se justifica siempre a la izquierda. Esta propiedad no puede cambiarse en tiempo de ejecucin, pero s puede leerse en que condicin est. Appearance Apariencia Plana o tridimensional. BackcolorColor de fondo Es el color de fondo de la caja de texto. Puede cambiarse en tiempo de ejecucin. BorderStyleTipo de borde Sin borde o con borde. En caso de haber elegido en la propiedad Appearance el modo tridimensional, y eligiendo con borde en esta propiedad, el aspecto adopta una forma como incrustada en el formulario. DataField DataSourceFuente de Datos

Tatiana Robles Crisstomo

Pgina 41

Tipos De Declaracin de Variables


Establecen la base de datos y el campo donde est el texto que se llevar a la propiedad Text. Estas propiedades permiten presentar de una forma muy sencilla datos de una Base de Datos. Se vern cuando se estudie el control Data y el motor de bases de datos DragIcon Establece el icono que se presenta como puntero en una operacin de arrastrar y colocar. DragMode Establece un valor que determina si se usa el modo de arrastre manual o automtico en una operacin de arrastrar y colocar. Los valores posibles de nmero son: 0 Manual (Predeterminado) 1 Automtico Enabled Habilitado Propiedad Booleana que habilita o deshabilita la etiqueta Cuando est deshabilitado (Enabled = False), no tienen efecto los eventos que se produzcan sobre el TextBox. No se puede escribir el l ni pasarle el foco, pero s se le puede cambiar el texto mediante el programa. Puede ser una buena alternativa para impedir que el usuario pueda cambiar un determinado texto. Esta propiedad puede variarse en tiempo de ejecucin. Font Fuente Es el tipo de letra que se utilizar en el TextBox. Puede cambiarse en tiempo de ejecucin. ForeColorColor de la letra Determina el color de las letras del texto. Height Altura Establece la altura de la caja de texto. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de las dimensiones que se le den a la caja en tiempo de diseo. HelpContextID Tatiana Robles Crisstomo Pgina 42

Tipos De Declaracin de Variables


Establece un nmero de contexto asociado para este control. Este nmero se aplica para determinar la ayuda interactiva. Puede tener los siguientes valores: 0 = No se especifica nmero de contexto >0 Un entero que especifica un contexto vlido. Index Indice En el caso de que se tengan varias cajas de texto que realicen una funcin similar puede hacerse un array con ellas. Todas tendrn el mismo nombre, y se diferencian por un ndice. Esta propiedad Index toma el nmero de ese ndice. Left Posicin de su parte izquierda. Indica la posicin de la caja de texto, concretamente de su parte izquierda. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de la posicin que ocupaba en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. LinkItem LinkMode LinkTimeout LinkTopic Estas propiedades establecen la forma en que debe llevarse a cabo una conexin DDE con otra aplicacin. Se vern con ms detalle al estudiar los enlaces DDE Locked Establece si el texto se puede editar, es decir, cambiar. Cuando se pone esta propiedad a True, el texto existente en la caja puede resaltarse con el ratn, e incluso copiarlo al portapapeles, pero no puede variarse tecleando un nuevo texto. Se puede cambiar por programa, cambiando la propiedad Text. Si est en False, puede cambiarse el texto mediante teclado. MaxLenght Indica, si se establece, la longitud mxima del texto. MouseIconPuntero del ratn personalizado MousePointer Puntero ratn

Tatiana Robles Crisstomo

Pgina 43

Tipos De Declaracin de Variables


Determina la forma del puntero del ratn cuando ste pasa por encima de la caja de texto. Puede elegirse uno de los punteros preestablecidos en esta propiedad, (15 en total) e incluso un puntero personalizado en la propiedad MouseIcon. Para que aparezca este puntero personalizado, MousePointer debe ponerse al valor 99. Lo tpico para esta propiedad es el I-Beam (barra vertical) NameNombre Es el nombre de la caja de texto con el que se le conocer a lo largo del programa PasswordChar En ocasiones, es conveniente que no se pueda leer lo que se escribe en la caja de texto, caso por ejemplo de la entrada de un password o palabra de paso. Esta propiedad nos permite indicar un carcter que sustituye a cualquier carcter que tenga la caja de texto. (Tpicos el * o ?). El texto que tenga en la propiedad Text no cambia por el hecho de presentar en pantalla un carcter distinto. Esta propiedad puede cambiarse en tiempo de ejecucin. Para quitar el PasswordChar basta con forzarlo al carcter nulo : Text1.PasswordChar = "" Esta propiedad se ignora cuando la propiedad Multiline est a True. ScrollBars Cuando la propiedad Multiline de la caja de texto est a True, se pueden colocar barras de desplazamiento del texto hacia arriba y abajo, o hacia los lados. Esto nos permite tener una caja de texto de tamao reducido y poder leer en ella un texto mayor que la propia caja. Esta propiedad puede tomar los siguiente valores: 0 - No salen barras 1 - Barras de desplazamiento horizontal 2 - Barras de desplazamiento vertical 3 - Ambas barras. TabIndex N de orden para obtener el foco Al igual que para los botones de comando, esta propiedad para tabulador marca el orden en el que le llegar el foco al pulsar la tecla TAB Tag Tatiana Robles Crisstomo Pgina 44

Tipos De Declaracin de Variables


Esta propiedad no la usa directamente Visual Basic. Sirve para asociar a este control alguna informacin adicional para fines externos a la programacin. Top Indica la coordenada de la parte superior del control. Puede variarse durante el tiempo de ejecucin. Esta propiedad, juntamente con Left define la esquina superior izquierda de la caja de texto. Normalmente esta propiedad no se introduce numricamente, sino que la toma automticamente de la posicin que se le de en tiempo de diseo. Puede cambiarse, cambiando el valor a esta propiedad, en tiempo de ejecucin. VisibleVisible Propiedad Booleana. Si es true, la caja de texto se ve, si es False no se ve. Puede cambiarse en tiempo de ejecucin. WhatThisHelpID (Propiedad, Windows 95) Devuelve o establece un nmero de contexto asociado a un objeto. Se utiliza para dotar a las aplicaciones de Ayuda interactiva con el men emergente Qu es esto? de la Ayuda de Windows 95. Width Ancho Define el ancho de la caja de texto. Con Height determina la dimensin de la misma. PROCEDIMIENTOS DE LA CAJA DE TEXTO Click Change DblClick DragDrop DragOver GotFocus KeyDown KeyPress KeyUp LinkClose FRAME RECUADROUn control Frame proporciona un agrupamiento identificable para controles. Tambin puede utilizar un Frame para subdividir un formulario funcionalmente por ejemplo, para separar grupos de controles OptionButton. Para agrupar controles, en primer lugar trace el control Frame y, a continuacin, meta los controles dentro de Frame. De este modo podr mover al mismo tiempo el Frame y los controles que contiene. Si traza un control fuera del Frame y, a continuacin, intenta moverlo dentro de ste, el control se colocar sobre el Frame, pero no pertenecer a el. Es decir, si es un OptionButton este se comportar como si estuviese fuera del Frame, aunque fsicamente est dentro de el. Tatiana Robles Crisstomo Pgina 45

Tipos De Declaracin de Variables


Cuando un control Frame tiene dentro otros controles, y hacemos invisible al Frame, mediante su propiedad Visible = False, los controles interiores al Frame quedan tambin invisibles. PROPIEDADES Las sealadas con (*) no presentan novedades respecto a las ya comentadas para los controles precedentes. Appearance (*) Backcolor (*) CaptionEs el ttulo que aparece en el borde del Frame. ClipControls Si esta propiedad est a True, los mtodos grficos en eventos Paint vuelven a dibujar el objeto entero. Antes del evento Paint se crea una zona de recorte alrededor de los controles no grficos del formulario. Si esta propiedad est a False dibujarn solamente las reas ltimamente expuestas. En tiempo de ejecucin, esta propiedad es de slo lectura. DragIcon(*) DragMode(*) Enabled Cuando esta propiedad est a False, tanto los procedimientos asociados al propio control Frame como todos los controles dentro del Frame estarn inhabilitados. Si esta propiedad est a True, todos ellos estn habilitados. Font En esta propiedad, el tipo de letra afecta solamente al ttulo del Frame, no a los controles internos a el. ForeColor Color de las letras del ttulo del Frame. Height(*) HelpContextID(*)

Tatiana Robles Crisstomo

Pgina 46

Tipos De Declaracin de Variables


Index(*) Left(*) MouseIcon(*) MousePointer(*) Name(*) TabIndex(*) Tag(*) Top(*) Visible Cuando un Frame est con la propiedad Visible = False, tanto el propio Frame como todos los controles interiores a el sern invisibles. WhatsThisHelpID(*) Width(*) PROCEDIMIENTOS DEL FRAME Click DblClick DragDrop DragOver MouseDown MouseMove MouseUp CHECK BUTTON Y OPTION BUTTON (BOTONES DE ELECCION Y OPCION)

Dada la similitud de ambos controles, se comentan conjuntamente. El control CheckBox, o casilla de verificacin, permite elegir una opcin (activada/desactivada, True/False) que el usuario puede establecer o anular haciendo click. Una X en una casilla de verificacin indica que est seleccionada, activada, o con valor True. Cada casilla de verificacin es independiente de las dems que puedan existir en el formulario, pudiendo tomar cada una de ellas el valor True o False, a voluntad del operador.

Tatiana Robles Crisstomo

Pgina 47

Tipos De Declaracin de Variables


Un control OptionButton muestra una opcin que se puede activar o desactivar, pero con dependencia del estado de otros controles OptionButton que existan en el formulario. Generalmente, los controles OptionButton se utilizan en un grupo de opciones para mostrar opciones de las cuales el usuario slo puede seleccionar una. Los controles OptionButton se agrupan dibujndolos dentro de un contenedor como un control Frame, un control PictureBox o un formulario. Para agrupar controles OptionButton en un Frame o PictureBox, dibuje en primer lugar el Frame o PictureBox y, a continuacin, dibuje dentro los controles OptionButton. Todos los controles OptionButton que estn dentro del mismo contenedor actan como un solo grupo, e independientes de los controles OptionButton de otros grupos distintos. Aunque puede parecer que los controles OptionButton y CheckBox funcionan de forma similar, hay una diferencia importante: Cuando un usuario selecciona un OptionButton, los otros controles del mismo grupo OptionButton dejan de estas disponibles automticamente. Por contraste, se puede seleccionar cualquier nmero de controles CheckBox.

En el ejemplo de la figura, existen tres grupos de OptionButton, uno en un PictureBox, que acta, al tiempo que como cuadro de imagen, como contenedor de controles OptionButton. Otro grupo est en el interior de un control Frame, y el otro grupo est en el formulario. Los tres grupos son independientes entre s, pero interiormente al grupo solamente puede seleccionarse uno de los OptionButton que lo componen. En el formulario tambin existen tres CheckBox, que como puede verse, se pueden seleccionar los que se desee, sin ningn tipo de exclusin entre ellos. PROPIEDADES Las sealadas con (*) son comunes a ambos controles y no presentan novedades respecto a las ya comentadas para los controles precedentes. AlignmentComn a ambos controles. Admite los siguientes valores : 0 - Left Justify 1 - Right Justify Tatiana Robles Crisstomo Pgina 48

Tipos De Declaracin de Variables


Cuando se elige el valor 0, justificado a la izquierda, el ttulo del control aparece a la derecha del botn, pegado a la figura del botn. Cuando se elige el valor 1, justificado a la derecha, el ttulo (Caption) aparece a la izquierda del botn, comenzando en la parte izquierda del cuerpo total del control, es decir, no tiene porqu aparecer con su parte derecha pegado al botn, caso que el cuerpo total del control se haya hecho mas largo que la palabra del ttulo. Appearance (*) Backcolor (*) Caption(*). DataField DataSource Propiedades del CheckBox solamente. Establecen la base de datos y el campo donde estn los datos (True / False) que se llevarn a la propiedad Value . Al igual que en los controles Label y TextBox esta propiedad nos permite visualizar datos de una base de datos de una forma muy sencilla. En este caso, el CheckBox solamente permite presentar (logicamente) datos de tipo Booleano. DragIcon(*) DragMode(*) Enabled(*) Font(*) ForeColor(*) HeightComn a ambos controles. La altura del control solamente afecta a la colocacin del Titulo (Puede ponerse un ttulo largo en varias lneas), no al tamao del botn, que es invariable. HelpContextID(*) Index(*) Left(*) MouseIcon(*) MousePointer(*)

Tatiana Robles Crisstomo

Pgina 49

Tipos De Declaracin de Variables


Name(*) TabIndex(*) TabStop (*) Tag(*) Top(*) Value Comn a ambos controles El valor de esta propiedad indica si el control est seleccionado (Value = 1) o no seleccionado (Value = 0 Value = False). Esta propiedad puede cambiarse en tiempo de ejecucin. Mediante esta propiedad, podemos tanto forzar el valor como leerlo. Atencin. Presenta una diferencia entre uno y otro control respecto a la forma de expresarse respecto a su valor cuando est seleccionado. Para forzar que el control NO est seleccionado, o para leer el Value cuando no est seleccionado, podemos utilizar tanto Value = 0 como Value = False. Sin embargo, cuando lo que se quiere es poner la propiedad a True hay una diferencia entre ambos controles. Para el OptionButton podemos utilizar indistintamente las siguiente formas : Option1.Value = True Option1.Value = 1 Con cualquiera de ellas seleccionaremos ese control por programa. Para el CheckBox solamente se podr usar para este propsito la instruccin : Check1.value = 1 El poner como Value el valor True nos dar en este control un error. Para la lectura del Value, existe una diferencia entre el valor devuelto por el CheckBox y el devuelto por el OptionButton. Para leer el dato existente en un CheckBox es necesario utilizar la forma : variable = Check1.Value donde variable tomar el valor 1 (no True) Para el control OptionButton emplearemos una instruccin igual : variable = Option1.Value donde variable tomar el valor True (no 1) Tatiana Robles Crisstomo Pgina 50

Tipos De Declaracin de Variables


Visible(*) WhatsThisHelpID(*) Width(*) PROCEDIMIENTOS Click DblClick (Solo OptionButton) DragDrop DragOver GotFocus KeyDown KeyPress KeyUp LostFocus LIST BOX Y COMBO BOX Estos dos controles, debido a su similitud, se estudian conjuntamente. Se obtienen directamente de la caja de herramientas :

Un control ListBox muestra una lista de elementos en la que el usuario puede seleccionar uno o ms. Si el nmero de elementos supera el nmero que puede mostrarse, se agregar automticamente una barra de desplazamiento al control ListBox. Un control ComboBox combina las caractersticas de un control TextBox y un control ListBox. Los usuarios pueden introducir informacin en la parte del cuadro de texto y seleccionar un elemento en la parte de cuadro de lista del control. En resumen, un ComboBox es la combinacin de un ListBox, que se comporta como si de un ListBox se tratase, y de un TextBox, con comportamiento anlogo a un TextBox sencillo, con la particularidad aqu de que el texto se le puede introducir por teclado, o elegir uno de los que figuran en la parte ListBox del Combo. Estos controles toman la siguiente forma :

Puede verse en la figura un ejemplo de presentacin de un ListBox (izquierda), un ComboBox con la lista desplegada (Centro) y un ComboBox con la lista sin desplegar (Combo2 a la derecha). La lista tiene varios elementos. Cada lnea de esta lsta es un elemento de la lista. Como el nmero de elementos de la lista tiene mas elementos de los que le podan caber, gener automticamente la barra de desplazamiento vertical. Tatiana Robles Crisstomo Pgina 51

Tipos De Declaracin de Variables


El ComboBox est normalmente sin desplegar. Se despliega cuando se hace click con el ratn en la flecha que tiene en su parte derecha (vase fig. Anterior). Al desplegarse, muestra la lista con todos sus elementos. Haciendo click con el ratn en cualquiera de sus elementos, el elemento elegido pasa a la parte TextBox del Combo y la lista vuelve a replegar. El ListBox (y por tanto el ComboBox) tiene unas propiedades y mtodos particulares que solamente se pueden aplicar durante el tiempo de ejecucin : ListCount - Indica el nmero de elementos que tiene la lista ListIndex - Indica el nmero de orden del elemento seleccionado dentro de la lista. AddItem - Aade un elemento a la lista. RemoveItem - Elimina un elemento de la lista. Text - Obtiene el elemento seleccionado. List (n) - Obtiene el elemento cuyo orden dentro de la lista es n. ListCount valdr 0 si la lista no tiene ningn elemento, y n si tiene n elementos. Para seleccionar un elemento de la lista, basta con hacer click con el ratn sobre l. Ese elemento se resaltar con fondo en azul. Una vez seleccionado un elemento, la propiedad ListIndex tomar el valor del nmero de orden que ocupa ese elemento en la lista, comenzando por el 0 para el elemento que ocupa el primer lugar. Si no se selecciona ningn elemento, el valor de la propiedad ListIndex ser -1. El primer elemento de la lista es ListIndex 0, y el valor de la propiedad ListCount siempre es uno ms que el valor mayor de ListIndex. En el ComboBox la propiedad Text contiene el texto que contenga la parte TextBox del Combo, bien haya sido introducida desde teclado o mediante la recuperacin de un elemento la parte ListBox del mismo. Ejemplos Supongamos que tenemos un ListBox llamado List1, y un ComboBox llamado Combo1. Se enumeran distintas formas de obtener informacin de ellos. Variable = List1.Listcount Tatiana Robles Crisstomo Pgina 52

Tipos De Declaracin de Variables


Variable contendr un nmero con el nmero total de elementos de la lista List1. Variable = List1.ListIndex Variable contendr un nmero con el nmero de orden del elemento de la lista seleccionado en ese momento. List1.AddItem "ELEMENTO NUEVO" Aade un elemento a List1. En este caso, el elemento aadido es la palabra ELEMENTO NUEVO. Variable = "VISUALBASIC" List1.AddItem Variable Aade un elemento a List1. En este caso, el elemento aadido es la palabra VISUALBASIC. Variable = List1.Text Variable contendr el elemento que estaba seleccionado en List1. (Variable ser una cadena de caracteres) Variable = List1.List (n) Variable contendr el elemento que ocupa el nmero de orden n dentro de la lista. Variable = List1.List (List1.ListIndex) Variable contendr el elemento que estaba seleccionado en List1. Se ha utilizado la propiedad List para obtener el elemento, y en vez de introducir un nmero para definir el elemento que se desea, se introdujo el valor ListIndex de List1, que es concretamente, el nmero de orden del elemento seleccionado en ese momento. Observe que poner List1.List (List1.ListIndex) es idntico a poner List1.Text. List1.RemoveItem (n) Elimina el elemento n de List1. List1.RemoveItem (List1.ListIndex) Elimina el elemento que estaba seleccionado en ese momento. Tatiana Robles Crisstomo Pgina 53

Tipos De Declaracin de Variables


List1.listIndex = n Selecciona el elemento n de List1 (Se resalta en azul el elemento n) PROPIEDADES DE ListBox y de ComboBox Las sealadas con (*) son comunes a ambos controles y no presentan novedades respecto a las ya comentadas para los controles precedentes. Appearance (*) Backcolor (*) ColumnsPropiedad de ListBox solamente. Determina si los elementos se presentan en una sola columna o en varias columnas, y la forma de presentar los elementos en el ListBox. Si esta propiedad se pone a 0 la lista tendr solamente una columna, y presentar los elementos uno debajo de otro. Cuando los elementos sean mas que los que se pueden presentar en la lista, aparecen automticamente unas barras de desplazamiento vertical. Si la propiedad se pone a un nmero distinto a 0, el ListBox es de tipo multicolumna, presentar en cada columna los elementos que le quepan dependiendo de su dimensin vertical, y tendr tantas columnas como sea necesario para albergar el nmero de elementos que tenga. Presentar en su cuadro tantas columnas como se le indique en el valor de esta propiedad, y si no puede presentar todos los elementos en las columnas que muestra, le aparecern barras de desplazamiento horizontales para poder movernos por todas las columnas que tenga. Recuerde : El nmero que se le asigna a la propiedad Columns no indica el nmero de columnas que tendr el ListBox sino el nmero de columnas que presenta. Esta propiedad puede asignarse en diseo, mediante la caja de propiedades, o en tiempo de ejecucin mediante una instruccin como esta : Nombrelista.Columns = nmero . Esta propiedad no puede definirse a 0 o cambiada desde 0 en tiempo de ejecuciones decir, no se puede convertir en tiempo de ejecucin un ListBox de mltiples columnas en un ListBox de columna nica o un ListBox de columna Tatiana Robles Crisstomo Pgina 54

Tipos De Declaracin de Variables


nica en un ListBox de mltiples columnas. Sin embargo, s es posible cambiar durante la ejecucin el nmero de columnas de un ListBox de mltiples columnas. DataField DataSource . Establecen la base de datos y el campo donde estn los datos que se llevarn al TextBox o ComboBox para presentar datos procedentes de una Base de Datos. DragIcon(*) DragMode(*) Enabled(*) Font(*) ForeColor(*) Height(*) HelpContextID(*) Index(*) IntegralHeight No aplicable a ListBox o ComboBox ItemDataPropiedad muy importante. Devuelve o establece un nmero especfico para cada elemento de un control ComboBox o ListBox. Sintaxis objeto.ItemData(ndice) [= nmero] La sintaxis de la propiedad ItemData tiene las siguientes partes: objeto Nombre del ListBox o ComboBox. ndice El nmero de un elemento concreto del objeto. nmero El nmero que se asocia con el elemento especificado. Comentarios

Tatiana Robles Crisstomo

Pgina 55

Tipos De Declaracin de Variables


La propiedad ItemData es una matriz de valores enteros largos cuyo nmero de elementos es el valor de la propiedad ListCount del control. Los nmeros asociados con cada elemento se pueden usar para cualquier fin. Por ejemplo, se puede usar en la confeccin de una lista de telfonos, el nmero de identificacin de un empleado, etc. Cuando se rellena el ListBox, tambin se rellena los elementos correspondientes de la matriz ItemData con los nmeros correspondientes. La propiedad ItemData se usa a menudo como ndice de una matriz de estructuras de datos asociados con los elementos de un control ListBox. Nota Cuando se inserta un elemento en una lista con el mtodo AddItem, el elemento tambin se inserta automticamente en la matriz ItemData. Sin embargo, el valor no se reinicializa a cero; retiene el valor que estaba en esa posicin antes agregar el elemento a la lista. Cuando se usa la propiedad ItemData, asegrese de establecer su valor al agregar nuevos elementos a la lista. Left(*) List Es el contenido de la lista. Si la lista de elementos es corta e invariable, pueden introducirse los elementos en el cuadro de propiedades durante el diseo. MouseIcon(*) MousePointer(*) Name(*) Sorted Establece o devuelve un valor que indica si los elementos de un ListBox o ComboBox se colocan automticamente en orden alfabtico. Los valores que puede adoptar son True o False. TrueLos elementos de la lista se ordenan alfabticamente (sin distinguir entre maysculas y minsculas). False(Predeterminado) Los elementos de la lista no se ordenan alfabticamente. Cuando esta propiedad tiene el valor True, Visual Basic se encarga de casi todo el procesamiento de cadenas necesario para mantener el orden alfabtico, Tatiana Robles Crisstomo Pgina 56

Tipos De Declaracin de Variables


incluyendo el cambio de los nmeros de ndice cuando se agregan o eliminan elementos. Nota El uso del mtodo AddItem para agregar un elemento en una posicin especfica de la lista puede romper el orden alfabtico, y los elementos agregados con posterioridad pueden no ordenarse correctamente. TabIndex(*) TabStop (*) Tag(*) Top(*) Visible(*) WhatsThisHelpID(*) Width(*) PROCEDIMIENTOS Click Change (Solo ComboBox) DblClick DragDrop DragOver DropDown (Solo ComboBox) GotFocus KeyDown KeyPress KeyUp LostFocus MouseDown (Solo ListBox) MouseMove (Solo ListBox) MouseUp (Solo ListBox) NOTA MUY IMPORTANTE El procedimiento Change del ComboBox solamente se efecta cuando el cambio se produce mediante la entrada de un texto DESDE EL TECLADO, no por un cambio en la parte Text de este control, producido al llevar un elemento desde la parte List a la parte Text. CONTROLES HScrollBar y VScrollBar Son dos controles similares, para introducir un dato cuasi-analgico en una aplicacin. Se toman directamente de la caja de herramientas, y tienen un aspecto parecido al de un control de volumen de un equipo de msica. El HScrollBar est en posicin horizontal, y el VScrollBar en posicin vertical.

Tatiana Robles Crisstomo

Pgina 57

Tipos De Declaracin de Variables


Mediante estos controles se pueden introducir datos variando la posicin del cursor. PROPIEDADES de HScrollBar y VScrollBar Las sealadas con (*) son comunes a ambos controles y no presentan novedades respecto a las ya comentadas para los controles precedentes. DragIcon(*) DragMode(*) Enabled(*) Height (*) HelpContextID(*) Index(*) LargeChange Esta propiedad establece la variacin de la propiedad Value cada vez que se hace click en el interior de la barra de desplazamiento, en la parte por donde pasa el cursor. Left(*) Max Esta propiedad establece el valor mximo para la propiedad Value, es decir, el valor de esta propiedad cuando el cursor est en su parte mxima. (Recuerde que el cursor est en el mximo, cuando est mas a la derecha, caso del HScrollBar, o cuando est en la parte mas baja, caso del HScrollBar. Min Esta propiedad establece el valor mnimo para la propiedad Value, es decir, el valor de esta propiedad cuando el cursor est en su parte mnima. (Recuerde que el cursor est en el mnimo, cuando est mas a la izquierda, caso del HScrollBar, o cuando est en la parte mas alta, caso del HScrollBar. MouseIcon(*) MousePointer(*)

Tatiana Robles Crisstomo

Pgina 58

Tipos De Declaracin de Variables


Name(*) SmallChange Esta propiedad establece la variacin de la propiedad Value cada vez que se hace click en las flechas superior o inferior de la barra de desplazamiento. TabIndex(*) TabStop (*) Tag(*) Top(*) Value Esta propiedad lee o establece el valor dado por la posicin del cursor. Este valor tiene un mnimo, establecido por Min y un mximo, establecido por Max. Esta propiedad es la que se debe leer para conocer la posicin del cursor. Visible(*) WhatsThisHelpID(*) Width(*) PROCEDIMIENTOS DE HScrollBar y VScrollBar Change DragDrop DragOver GotFocus KeyDown KeyPress KeyUp LostFocus Scroll Comentario El Procedimiento Change se produce cuando, tras mover el cursor, se suelta el botn del ratn. Esto produce el efecto de que el cambio que se tenga que producir con el movimiento del cursor no se realiza de una manera continua. El procedimiento Scroll se realiza en el instante que se est moviendo el cursor. Por lo tanto, es este procedimiento el que se debe usar para conseguir el efecto de un cambio continuo mientras se est moviendo el cursor. TIMER TEMPORIZADOR Este objeto permite establecer temporizaciones. Presenta una novedad respecto a los controles estudiados hasta ahora. El control Timer solamente se

Tatiana Robles Crisstomo

Pgina 59

Tipos De Declaracin de Variables


ve durante el tiempo de diseo. En tiempo de ejecucin, el control permanece invisible. La temporizacin producida por el Timer es independiente de la velocidad de trabajo del ordenador. (Casi independiente. El timer no es un reloj exacto, pero se le parece) Se toma directamente de la caja de herramientas, y tiene el aspecto siguiente :

PROPIEDADES Enabled (*) Index (*) Interval El valor de esta propiedad nos dar el intervalo de tiempo (en milisegundos) en que se producir un evento Timer y consecuentemente, realizar el procedimiento asociado a este evento. Si el valor de la propiedad Interval est a 0 (Predeterminado), no se produce el evento Timer. (El control Timer est deshabilitado cuando se pone la propiedad Interval = 0)

Tatiana Robles Crisstomo

Pgina 60

Potrebbero piacerti anche