1. Programación con VB 6.0 Tsu . Enzo Costantini
Este trabajo no pretende ser un Manual, pero
si una guía de estudio de VISUALBASIC 6.0
producto de una investigación personal.
Por:Enzo Costantini
mailto:enzodejesuscostantini@hotmail.com
Caracas, Venezuela
2. Programación con VB 6.0 Tsu . Enzo Costantini
VISUAL BASIC:
Para entender lo que este lenguaje de programación quiere decir es necesario
descomponerla en dos partes:
VISUAL: Anteriormente era necesario escribir una gran cantidad de código en el lenguaje
para formar la interfaz de usuario y además eran mucho menos eficientes y más difíciles de
entender. Mediante la creación de una interfaz de usuario mediante objetos (controles)
prediseñados puede cambiar de forma sencilla la interfaz de usuario reduciendo el tiempo de
trabajo y la eficiencia del mismo, esto es lo que propone la palabra Visual, crear de forma sencilla
la interfaz de usuario de modo que no sea necesario dedicar tanto tiempo a la creación de la
misma.
BASIC: Esta palabra es la abreviación de las siglas (en inglés) Beginners All-Purpose
Symbolic Instriction Code, se refiere al lenguaje de programación más utilizado en la historia de la
informática y la programación, aunque en principio era un poco más sencillo, ahora muchas más
instrucciones y métodos que se han adaptado para crear aplicaciones bajo ambiente Windows.
Entonces Visual Basic se refiere al lenguaje de programación de computadoras que
combina las facilidades de trabajo que ha desarrollado Microsoft en un entorno de interfaz visual,
con el lenguaje de programación BASIC, por ello ahora la forma de crear una interfaz de usuario se
torna mucho mas económica, en los que a líneas de código se refiere y por lo tanto a ganar tiempo
para realizar programas con mucho y hasta nada de código.
1. EL ENTORNO DE DESARROLLO DE VB 6.0
Primero, se presenta la primera pantalla que aparece al ejecutar el comando de entrada de
VB 6.0. Fig. 1.
FIGURA 1. Primera Pantalla que aparece al ejecutar VB 6.0.
3. Programación con VB 6.0 Tsu . Enzo Costantini
En ella, aparece el cuadro de diálogo “Nuevo proyecto” que ofrece tres fichas de opciones
al comenzar en la sesión con Visual Basic, estas son:
• Nuevo: Propone crear un nuevo proyecto.
En ella aparece seleccionado por defecto EXE estándar. EXE es la abreviación de
EXECUTE o en español -proyecto ejecutable-. Esta opción nos crea un nuevo proyecto que
después de compilado nos crea una aplicación. Este es el elemento que más comúnmente
utilizaremos, ya que la presente investigación hace referencias a creaciones ejecutables. No hay
ejemplos de librerías dinámicas (*.dll o DLL ActiveX) ni a controles ActivesX (*.ocx) ni otro tipo de
aplicación; así que si desea buscar información sobre estos tipos de proyectos, puede abandonar
esta lectura.
• Existente: Propone abrir un proyecto que fue creado anteriormente, desplega el cuadro
de diálogo Abrir para buscar el proyecto en el directorio.
• Reciente: Propone también abrir un proyecto ya creado, pero a diferencia de
Existentes, éste nos desplega una lista de los proyectos que han sido creados o modificados en las
últimas sesiones de trabajo con VB 6.0.
4. Programación con VB 6.0 Tsu . Enzo Costantini
Para comenzar, se creará un nuevo proyecto haciendo doble-clic en EXE estándar. VB
desplegará la siguiente pantalla.
Figura 2. Entorno integrado de desarrollo de VB 6.0
El Sector 1 en la Fig. 2 se llama Formulario del proyecto. El formulario será la ventana de
aplicación o interfaz del usuario cuando el programa se compile o se ejecute. Un programa puede
tener uno o varios formularios, y se puedes abrir y cerrar cada uno de ellos según se necesite. En
ellos se agregarán los controles que sirven para crear una aplicación e interactuar con el usuario.
La pantalla blanca que se ve detrás del formulario es la pantalla donde se agrega el código
del programa.
La Fig. 3 (Sector 2 de la Fig. 2) es el Cuadro de herramientas, ella
proporciona algunas de las herramientas que puede agregar al formulario en
tiempo de diseño. Estas herramientas son llamadas controles y alguno de
ellos son las Etiquetas (Labels), Cuadro de texto (TextBox), botones de
comandos (CommandButton. Ver Controles en la Sección Nro. 4.
Para realizar la primera aplicación (Programa #1) se deben agregar
dos controles al formulario número uno. Haga clic sobre CommandButton en
Cuadro de Herramientas; el puntero del mouse tomará una forma de cruz
cuando esté por encima del formulario, dibuje el tamaño del control en el
mismo, para ello mantenga el clic presionado mientras dibuja el tamaño y
luego suelte el botón del mouse. Se dibujará en el formulario un botón de
comando con Caption (texto que se muestra) igual a Command1 e igual
nombre. Agreguemos también un Cuadro de texto (Textbox), para ello haga
clic sobre Textbox y luego dibújelo en el formulario mediante el mismo
procedimiento, aparecerá un cuadro de texto con Text (texto que se ve igual
Figura 3. Cuadro a Text1) e igual nombre.
de Herramientas El Sector 3 de la Fig. 2 muestra la Barra de herramientas (parte
superior de la Fig. 2). Las Barras de herramientas también se encuentran en
programas como Word, PowerPoint y Excel, entre otros y por ello ya es muy
probable que ya sean conocidas. Ella proporciona un acceso a los comandos utilizados cuando
está creando una aplicación. Puede agregar o quitar barras si hace clic en el botón secundario del
mouse sobre la barra de herramientas y luego clic sobre la que desea agregar o quitar.
5. Programación con VB 6.0 Tsu . Enzo Costantini
Para usar la Barra de herramientas diríjase al Menu Ejecutar y luego haga clic sobre Iniciar.
Se iniciará una prueba del programa, por ahora sólo mostrará el formulario con los controles
Command1 y Text1. También puede agregar un formulario al proyecto, para ello diríjase al menú
Proyecto y luego haga clic sobre Agregar formulario, después clic sobre Formulario.
La Fig. 4 modela lo que es el Explorador de Proyectos (Sector
4 de la Fig. 2). Una aplicación puede contener uno o mas elementos
(nuestro ejemplo tiene dos formularios) y si quiere tener acceso a uno
de ellos tendrá que ir al Explorador de proyectos hacer un clic sobre el
elemento y luego clic en Ver Objeto o Ver Código, según lo que desea.
En este ejemplo existe un proyecto con dos formularios
Form1(no seleccionado) y Form2 (seleccionado). Si hace clic en Ver
Objeto mostrará el formulario 2 si lo hace en Ver Código mostrará el
código de este formulario. En principio sólo es una pantalla en blanco,
ya que no hay código hasta el momento.
Si no puede ver esta ventana directamente, tendrá que ir al Figura 4. Explorador de
menú Ver de la Barra de herramientas y luego hacer clic sobre Proyectos
Explorador de Proyectos.
En la Fig. 5 se hace referencia a la Ventana Propiedades
(Sector 5 de la Fig. 2). Las propiedades son un conjunto de
características que determinarán la forma de los controles o
formularios. Algunas propiedades comunes son el nombre (para
identificarlo en el código), el alto, ancho, color del fondo y
muchas mas según el tipo de control con el que trabaja, por ello
cambia cada vez que cambia el enfoque del tipo de control. Es
decir, las características de un formulario no son iguales a las
características de una etiqueta, botón de comando o de un
cuadro de texto. Por ejemplo, haga clic sobre el botón de
comando Command1 y eche un vistazo sobre las diferentes
propiedades, observará un cuadro igual a la Fig. 5. Ahora, haga
clic sobre cualquier parte del formulario (que no sea Command1)
o sobre el control Text1, verá que algunas propiedades no se
encuentran, y en cambio aparecen otras.
Para utilizar esta Ventana, presione un solo clic sobre el
Control Command1 y en la Ventana Propiedades, cambie
Figura 5. Propiedades Caption de Command1 a Saludar, vaya ahora al Cuadro de
texto, ubique la propiedad Text, borre el contenido (Text1) y
déjelo en blanco.
La Fig. 6 que proporciona la parte 6 de la Fig. 2 es la imagen de la ventana Posición del
Formulario. Ésta ventana permite cambiar la posición del formulario antes de que la aplicación vaya
a ser ejecutada. Puede utilizar esta pantalla cambiando la posición del formulario arrastrándola con
el ratón (mouse) y luego verificarla ejecutando el proyecto.
Figura 6. Ventana Posición del
Formulario
6. Programación con VB 6.0 Tsu . Enzo Costantini
Programa #1. Saludar:
Ahora se debe escribir un poco de código para crear la primera aplicación.
Para comenzar se puede hacer de tres maneras. Verifique que el formulario 1 con los dos
controles (TextBox y CommandButton) este activo en el Explorador de Proyectos, haga clic sobre
Ver Código y aparecerá una pantalla en blanco para empezar a escribir código, también verá que
inmediatamente arriba de esta pantalla aparece la palabra (General) que contiene una lista,
busque en ella la palabra Command1, este llamará directamente al evento clic, es decir, las
secuencias de comandos que se efectuarán al hacer clic en este botón. La otra manera es verificar
que el formulario activo (en el Explorador de Proyectos) sea el que tiene los dos controles
(Command1 y Text1), haga clic en Ver Objeto, y luego haga doble clic sobre el botón que dice
Saludar, se desplegará el siguiente código:
Private Sub Command1_Click()
End Sub
La tercera manera es escribir directamente el código que se mostró.
Aquí se escribirán las sentencias que se efectuarán cuando haga clic en el botón Saludar
(ya que Command1 es el nombre del botón).
Ahora copie y pegue este código o escriba, de tal manera que quede de la siguiente
manera:
Private Sub Command1_Click()
If Command1.Caption = "Saludar" Then
Text1.Text = "¡Hola!, ¿Cómo estas?"
Command1.Caption = "Borrar"
Else
Text1.Text = ""
Command1.Caption = "Saludar"
End If
End Sub
Ejecute la aplicación con F5 o Iniciar en la Barra de Herramientas e interactúe con el
programa.
Si desea una explicación detallada de este programa vaya a la Sección Explicación
Detallada de Programas en los capítulos finales. (Ver índice)
De aquí podemos concluir que las propiedades de los controles pueden cambiar, tanto en
tiempo de diseño como en tiempo de ejecución.
Nota: Para cerrar una sesión de trabajo con VB y abrir un Nuevo proyecto, puede guardar el
formulario, el proyecto y luego buscar en el Menú Archivo de la barra de herramienta, haga clic en
Quitar Proyecto, esto cierra el proyecto y puede crear uno nuevo en Archivo – Nuevo Proyecto. Si
no quita el proyecto y crea uno nuevo, se creará un Grupo de Proyectos.
7. Programación con VB 6.0 Tsu . Enzo Costantini
2. PROPIEDADES, MÉTODOS, EVENTOS Y CONSTANTES.
• Propiedades:
Como ya se ha mencionado en varias ocasiones, los controles y los formularios contienen
propiedades, éstas son, sus características particulares que los diferencian de otros.
Por ejemplo si hablamos de una silla, ésta tendrá propiedades como el material, número de
patas, tamaño, forma del asiento, y otras.
En Visual Basic las propiedades se identifican en el código por tener la forma:
Objeto.Propiedad = Valor
Donde Objeto es el elemento al cual se hace referencia y valor es una constante o variable
que llama a una constante. El valor que identifica la propiedad.
Si hablamos de la Silla, podríamos decir:.
Silla.Material = Madera
Silla.Patas = 4
Silla.Tamaño = 1,5
Se dice una variable que llama a una constante ya que, puede asignar a una variable un
valor y luego llamar a esta variable de la siguiente manera:
Material = Madera
Silla.Material = Material
En el Examinador de Objetos, o en el transcurso de una programación se pueden
identificar las propiedades por tener a su lado una figura como esta:
Lleve a cabo una pequeña demostración. En el programa #1, diríjase a la pantalla Ver
Código y escriba Command1. (la palabra Command1 más el punto), se desplegará una lista de
propiedades y métodos de los botones de comandos, en este caso de Command1. Observe la
figura que se encuentra a su lado.
• Los Métodos:
Los métodos son las diferentes acciones que puede realizar un elemento.
Por ejemplo la silla puede inclinarse, volver a su posición inicial, subir o bajar su cabecera,
moverse de un lado a otro, entre otros.
Los Métodos se diferencian en el código de las propiedades ya que no les sigue el signo
igual, pero podría tener un valor, es decir, tienen la siguiente forma:
Objeto.Método [Valor]
Así podemos llamar los siguientes métodos de la silla:
Silla.Inclinar 20°
Silla.Volver
El valor sólo aparece en algunos casos, es decir es opcional y depende del método que se
esté utilizando. Puede tener más de un valor. Ejemplo:
Silla.Mover (3mts adelante, 2mts hacia la derecha)
8. Programación con VB 6.0 Tsu . Enzo Costantini
Los métodos se identifican en el Examinador de Objetos o en el transcurso de la
codificación por tener a su lado la siguiente figura:
Realice la misma prueba que en las propiedades (Command1.) y ubique los métodos
mediante la figura.
• Los Eventos:
Los Eventos son los acontecimientos que pueden suceder mientras ejecuta una aplicación,
es decir, el clic a un botón de comando o a una etiqueta, esto llama a un procedimiento, a una
secuencia de comandos.
Estos se pueden Observar en el Código por la secuencia Sub, de la siguiente manera.
Sub Objeto_Evento([argumentos])
- Comando1
- Comando2
- ...Otros Comandos
End Sub
Por ejemplo, haciendo referencia a la silla observe lo que sucede al evento sentarse.
Sub Silla_Sentarse()
Peso es Variable
Si Peso es mayor a 100kg, entonces:
Silla.Romper
Sillas.Patas=0
Sino
Silla.Soportar
Fin de Secuencia Si
End Sub
El código describe los sucesos que se ejecutarán cuando suceda el evento sentarse.
Los eventos pueden encontrarse en el Examinador de Objetos, por medio de la figura de
un rayo .
• Las Constantes:
Son valores numéricos o cadenas de texto que hacen referencia a un estado. Por ejemplo:
En las casillas de verificación la propiedad Value del control puede tomar tres constantes:
- vbUnchecked, que corresponde al valor 0.
- VbChecked, que corresponde al valor 1.
- VbGrayed, que corresponde al valor 2
Se puede colocar su cadena de texto que corresponde a dicho estado o su valor numérico
si se quiere colocar en su forma abreviada. En VB 6.0 se utilizan mucho este tipo de constantes.
Las constantes se identifican en el Examinador de Objetos por tener a su lado una figura
como la siguiente:
9. Programación con VB 6.0 Tsu . Enzo Costantini
3. EL EXAMINADOR DE OBJETOS
El Examinador de Objetos es un tipo de ayuda de VB, que se utiliza generalmente para
encontrar los detalles de las distintas propiedades, los métodos, funciones, eventos o constantes.
Por ello es muy funcional a la hora de programar.
Para acceder a él, mientras esté en una sesión de programación, presione la tecla F2 o
vaya a la Barra de Herramientas en el menú Ver, busque Examinador de Objetos, se desplegará la
siguiente pantalla:
Por ejemplo, supongamos que deseamos verificar cuales son las diferentes constantes de
los estilos que se pueden emplear al crear un Cuadro de Mensaje (MsgBox), podemos escribir la
palabra MsgBox y el Examinador de objetos mostrará una serie de Clases que coinciden con la
palabra buscada, entre ellas VbMsgBoxStyle, puede hacer clic en ella y ver en la lista inferior las
constantes, tanto su modo abreviado como su equivalente numérico.
También puede acceder a las explicaciones de los distintos eventos de los controles o
formularios, para ello busque en la lista inferior izquierda el control al que desea encontrarle un
evento, por ejemplo CommandButton, la lista inferior derecha mostrará sus distintas propiedades,
métodos y eventos.
Si ahora hace clic sobre uno de ellos, en la parte inferior se muestra la explicación de dicho
elemento.
10. Programación con VB 6.0 Tsu . Enzo Costantini
4. LOS CONTROLES:
Los controles son una variedad de herramientas prediseñadas que pueden ser utilizados
en una aplicación según la finalidad de la misma.
Por la particularidad de cada una puede emplearse en ciertas circunstancias para mostrar
información, pedir información, enlistar miembros, desplegar imágenes o crear la ocasión para
realizar cálculos, entre otras.
Como ya dijimos, los controles están ubicados en el Cuadro de Herramientas
(generalmente en la parte izquierda de la pantalla). Ya hemos interactuado un poco con los
controles, pero en esta sección se explicarán cada uno de ellos por separado, utilizando en los
programas algunas de sus propiedades, métodos y eventos.
Los controles que aparecen siempre por defecto son:
• Control Label: Etiqueta
• Control TextBox: Cuadro de Texto
• Control PictureBox: Cuadro de Imagen
• Control Frame: Marco
• Control CommandButton: Botón de Comando
• Control CheckBox: Casilla de Chequeo
• Control OptionButton; Botón de Opción
• Control ListBox: Cuadro de Lista
• Control ComboBox: Cuadro Combinado
• Controles HScrollBar y VScrollBar: Barras de desplazamiento.
• Control Timer: Control de tiempo (Reloj)
• Control DriveListBox: Lista de Unidades de Discos
• Control DirListBox: Lista de Directorios
• Control FileListBox:: Lista de Archivos
• Control Shape: Formas
• Control Line: Línea
• Control Image: Imagen
• Control Data: Datos
• Control OLE: Contenedor OLE
Estos controles son llamados controles intrínsecos, ya que aparecen en todas las sesiones
y no se pueden quitar del Cuadro de Herramientas.
Pero además de éstos, existen otros controles que se pueden quitar o agregar y no
aparecen por defecto, aparecen en una lista adicional.
Para acceder a esta lista presione el botón secundario del mouse sobre el Cuadro de
Herramientas, en la lista que se desplega presione clic sobre Componentes; también lo pude hacer
Buscando en el Menú Proyecto – Componentes o simplemente CONTROL+T. De esta lista se dará
una explicación del control CommonDialog.
Ahora, mediante el Examinador de Objetos, se recomienda dedicar un tiempo a estudiar
las diferentes propiedades, los métodos y eventos de éstos distintos controles, aunque ya tenga
algo de experiencia siempre nos podemos encontrar con algún elemento nuevo. Para ello,
introduzca su nombre (Ejemplo: TextBox) y presione Buscar.
ETIQUETAS: (LABEL)
Las etiquetas se utilizan generalmente para dos fines:
• Escribir texto en el formulario, de modo que no esté disponible la opción de copiar
y pegar.
11. Programación con VB 6.0 Tsu . Enzo Costantini
Con esto, por ejemplo, se pueden identificar nombres de variables para el usuario.
(Ver Programa # 2).
• Mostrar resultados de modo que no se tenga la opción de copiar y pegar. (Ver
Programa # 2).
Programa #2. Sumar:
El siguiente programa agrega un valor a una suma.
Diseñe el formulario con tres etiquetas (Label), un Cuadro de texto (TextBox) y un botón de
comando (CommandButton).
Establezca en las etiquetas las siguientes propiedades:
• La primera (Label1) con Caption: &Valor =
(Indica al usuario que en el Text1, agregará el valor a sumar).
• La segunda con (Label2) con Caption: Resultado =,
(Indica al usuario que el resultado se presenta a su lado) y,
• En la tercera cambie el nombre (Name) a lblResultado y cambie la propiedad
BorderStyle = (1 – Fixed Single), que parece un cuadro de texto con fondo gris.
Luego, cambie el Caption del formulario a SUMA.
En el cuadro de texto genere su propiedad Text a cadena vacía (borre Text1).
En el botón de comando su Caption: &Sumar.
Verifique que la propiedad TabIndex de la etiqueta que dice &Valor = sea un número menor
que la propiedad TabIndex del Cuadro de Texto txtValor.
El símbolo (&) no aparecerá en el Caption y el efecto que produce es que subraya la letra
que le sigue (en este caso la letra S) y crea un acceso directo (al presionar la combinación ALT+S
se llamará al evento clic del comando o al presionar ALT+V tomará el enfoque el control Text1).
Ahora reubique las posiciones de los controles en tiempo de diseño de modo que se
visualicen de la siguiente manera:
A continuación empecemos a codificar, para ello, haga clic en Ver Código en el Explorador
de Proyectos.
Escriba en la pantalla en blanco:
Public Suma As Double
Busque en la lista que dice (General) la palabra cmdSumar y cuando aparezcan las dos
líneas para agregar código agregue las siguientes sentencias, de tal manera que aparezca:
Private Sub Command1_Click()
Dim Valor As Double
If Text1.Text = "" Then
Valor = 0
Else
Valor = CDbl(Text1.Text)
End If
Suma = Suma + Valor
lblResultado.Caption = Suma
Text1.Text = ""
End Sub
Ejecute la aplicación con F5, o en el menú Ejecutar.
12. Programación con VB 6.0 Tsu . Enzo Costantini
Verifique que el contenido de la suma no se puede copiar y pegar.
También después de introducir un valor en el cuadro de texto, en vez de presionar clic
sobre sumar, presione la combinación de teclas ALT+S, compruebe que se genera el mismo
evento. Para que vuelva a tomar el enfoque Text1, presione la combinación Alt+V. Esto sucede ya
que, como la etiqueta no puede tomar el enfoque pasa el enfoque a su TabIndex superior en uno,
en este caso el cuadro de texto.
La explicación de la codificación se encuentra en la Sección Explicación Detallada de
Programas en los últimos capítulos.
En este ejemplo se trabajaron con las propiedades de las etiquetas, Name (nombre),
Caption (título), BorderStyle (Estilo del Borde) y TabIndex (Índice de Tabulación). Existen otras
propiedades que también son muy utilizadas que son AutoSize (Ajustar horizontalmente al tamaño
del Caption) y WordWrap (Ajustar verticalmente al tamaño del Caption).
Para ver la explicación de otras propiedades, métodos o eventos puede dirigirse al
Examinador de Objetos con la tecla F2.
CUADROS DE TEXTOS: (TEXTBOX)
Los Cuadros de texto son muy utilizados en las aplicaciones con VB, tiene mucha
funcionalidad, pero generalmente son usados para:
• Leer valores o cadenas de texto para trabajar con ellos.
• Mostrar resultados tal como las etiquetas, pero en este caso facilita la posibilidad
de copiar y pegar.
Los Cuadros de texto son generalmente modificables en tiempo de ejecución, pero puede
convertirlo a sólo lectura si establece su propiedad Locked a True (verdadero). En este caso sólo
tendrá la posibilidad de copiar, pero no la de pegar
Como ya se ha trabajado la propiedad Text de los cuadros de Texto, se presenta ahora la
explicación del método SetFocus y dos de los eventos que se pueden generar al trabajar con estos
controles, los mismos son Change (que ocurre cuando cambia el control) y KeyPress (que ocurre
que presiona una tecla cuando este control tiene el enfoque). Si quiere la explicación de otras
propiedades, métodos o eventos diríjase al Examinador de Objetos.
Programa #3. Área de un triángulo:
Con este programa se calcula el área de un triángulo, los datos pedidos son la Base y la
Altura.
Coloque tres etiquetas en un formulario:
• La primera con propiedad Caption: &Base=
• La segunda con propiedad Caption: &Altura=
• La tercera con propiedad Caption: Resultado=
Agregue también tres cuadros de textos:
• El primero con propiedad Name: txtBase
• El segundo con propiedad Name: txtAltura
• El tercero con propiedad Name: txtResultado
Coloque dos botones de comando:
• El primero con propiedad Name: cmdCalcular, Caption: &Calcular y Enabled: False
• El segundo con propiedad Name: cmdBorrar y Caption: B&orrar
Cambie la propiedad Caption del formulario a AREA.
Reubique los controles de tal manera que quede de la siguiente manera:
13. Programación con VB 6.0 Tsu . Enzo Costantini
TxtBase está ubicado al lado de la etiqueta Base =.
TxtAltura al lado de la Etiqueta Altura = , y
TxtResultado al lado de la Etiqueta Resultado =.
Ahora, se puede empezar a codificar para realizar el programa, copie y pegue el siguiente
código o escriba:
Option Explicit
Private Sub cmdBorrar_Click()
txtBase = ""
txtAltura = ""
txtResultado = ""
cmdCalcular.Enabled = False
txtBase.SetFocus
End Sub
Private Sub cmdCalcular_Click()
Dim Base As Double, Altura As Double, Area As Double
Base = Val(txtBase)
Altura = Val(txtAltura)
If IsNumeric(txtBase) And IsNumeric(txtAltura) Then
Area = Base * Altura / 2
txtResultado = Area
Else
MsgBox "No se acepta texto. Verifique para continuar", vbOKOnly +
vbExclamation, "Error"
End If
End Sub
Private Sub txtBase_Change()
If Len(txtBase) > 0 And Len(txtAltura) > 0 Then
cmdCalcular.Enabled = True
End If
End Sub
Private Sub txtBase_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
txtAltura.SetFocus
End If
End Sub
Private Sub txtAltura_Change()
If Len(txtBase) > 0 And Len(txtAltura) > 0 Then
cmdCalcular.Enabled = True
End If
14. Programación con VB 6.0 Tsu . Enzo Costantini
End Sub
Private Sub txtAltura_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If cmdCalcular.Enabled = True Then
cmdCalcular.SetFocus
Else
TxtBase.SetFocus
End If
End If
End Sub
Ejecute la aplicación con la tecla F5, y compruebe las nuevas opciones que se han
generado en este programa, por ejemplo el reconocimiento de la tecla Enter (KeyAscii = 13) o
activar el botón de comando cuando ya se han rellenado los cuadros de texto con valores.
Para obtener una explicación detallada del programa puede ir a la Sección Detallada de
Programas y buscar el programa #3.
PICTUREBOX (CUADRO DE IMAGEN)
Los controles PictureBox se pueden utilizar para mostrar imágenes y mediante sus
métodos crear gráficos como líneas, cuadrados, rectángulos, círculos o elipses; aunque con un
poco de creatividad puede combinar varios de estos para realizar dibujos. Puede utilizarse también
como contenedores de otros controles, esto es muy útil por ejemplo para realizar barras de
herramientas o de estado. Otra opción que ofrece es la posibilidad de escribir sobre él mediante el
método Print.
Los formatos compatibles con este control son los archivos imágenes JPEG, formato de
intercambio gráfico (GIF), mapa de bits (BMP), íconos (ICO), cursores (CUR), metarchivo estándar
de Windows (WMF) o mejorados (EMF).
Puede mostrar una imagen en este control en tiempo de diseño mediante la propiedad
Picture, para cambiarla en tiempo de ejecución puede utilizar la siguiente:
Set Objeto.Picture = LoadPicture(Ruta)
Donde Ruta es la ruta y el nombre de la imagen (Ejemplo: “C:WindowsAros.bmp”) Si
desea quitar la imagen mostrada en el control se debe dejar en blanco los comandos de Ruta,
quedando de la siguiente manera:
Set Objeto.Picture = LoadPicture
Una desventaja que tiene este control con respecto al control imagen, es que el tamaño de
la imagen no se puede adaptar al tamaño del control, pero si el tamaño del control al tamaño de la
imagen mediante la propiedad AutoSize, si esta propiedad esta establecida como True (verdadera)
el tamaño del control se adapta al tamaño de la imagen, si el tamaño de la imagen es muy grande
debe tener cuidado de no opacar otros controles, si toma el valor False (Falso) no se cambia el
tamaño del control ni de la imagen, si la imagen es más grande que el control ésta se recortará.
Los Métodos Gráficos:
Como se mencionó anteriormente, en el control PictureBox puede dibujar formas como
puntos, líneas, círculos, elipses, arcos, cuadrados o rectángulos, además que permite escribir
sobre él. Estos métodos gráficos también son aplicables a los formularios.
• Puntos: Se realizan mediante el método Pset:
Objeto.Pset (X,Y), [color]
15. Programación con VB 6.0 Tsu . Enzo Costantini
Donde Objeto es el nombre del Cuadro de Imagen, de un formulario, o si se omite se hará
referencia al formulario actual (activo). X, Y son las coordenadas donde se colocará el punto. Estos
puntos tienen un tamaño de un píxel, siendo pequeños para la vista humana.
• Líneas: Se utiliza el método Line:
Objeto.Line (X1,Y1)-(X2,Y2), [color]
Donde X1 y Y1 son las coordenadas del punto inicial y X2 y Y2 las del punto final, el color
es opcional.
• Círculos: Se realizan mediante el método Circle:
Objeto.Circle (X,Y), radio, [color]
X, Y son las coordenadas del centro del círculo, radio el tamaño del radio y el color es
opcional.
• Elipses: Se realizan mediante el método Circle:
Objeto.Circle (X,Y), radio, [color], [inicio], [fin], aspecto
Donde radio es la distancia más grande de la elipse, inicio y fin se colocan si se desea
realizar sólo un arco, y aspecto es la relación o proporción de la distancia vertical con respecto a la
horizontal, los valores mayores a uno dibujan elipses alargadas verticalmente, mientras que los
valores entre cero y uno dibujan elipses alargadas horizontalmente. No se aceptan valores
negativos.
• Arcos: También se utiliza, por supuesto, el método gráfico Circle:
Objeto.Circle (X.Y), radio, [color], inicio, fin, [aspecto]
Donde inicio y fin son los ángulos de inicio y fin del arco en radianes y aspecto es opcional
y se coloca si desea dibujar el arco de una elipse.
• Cuadrados o Rectángulos: Se realizan mediante el método Line:
Objeto.Line (X,Y)-Step(Ancho,Alto), [color], B
Donde las coordenadas X, Y son las coordenadas de la esquina superior izquierda. Si
desea rellenar el cuadrado, debe cambiar la sentencia B por BF.
• Escribir Texto: Se escribe texto mediante el método Print. Para establecer el lugar
donde se colocará el texto se utilizan las instrucciones Objeto.CurrentX y Objeto.CurrentY.
Objeto.CurrentX = CoordenadaX
Objeto.CurrentY = CoordenadaY
Objeto.Print "Escriba texto"
Notas Importantes: Es importante resaltar que la coordenada Y se mide de arriba hacia abajo, tal
como los formularios.
Si en algún método gráfico desea omitir el color, inicio o fin deberá dejar el espacio en
blanco entre las dos comas:
16. Programación con VB 6.0 Tsu . Enzo Costantini
Ejemplo: un cuadrado donde se omite el color:
Objeto.Line (X,Y)-Step(Ancho,Alto), , B
O una elipse completa:
Objeto.Circle (X,Y), radio, color, , , aspecto
Como se puede ver el color es opcional en todos los métodos gráficos y si se omite este
presentará el color de la propiedad ForeColor cuyo valor predeterminado es negro.
Programa #4. Dibujar en un PictureBox:
El siguiente programa dibuja en un control PictureBox mediante los diferentes métodos
gráficos explicados anteriormente:
Para ello, agreguemos 7 botones de comando, y un control PictureBox. Cambie las
propiedades de la siguiente manera:
Todos los botones de comando tienen las propiedades:
Left: 240
Width: 1935.
Height: 375
Control Propiedades
1er Botón de Comando Name: cmdMostrar
Caption: Mostrar &imagen
Top: 120
2do Botón de Comando Name: cmdCuadrado
Caption: Dibujar c&uadrados
Top: 600
3er Botón de Comando Name: cmdLinea
Caption: Dibujar &líneas
Top: 1080
4to Botón de Comando Name: cmdPunto
Caption: Dibujar varios &Puntos
Top: 1560
5to Botón de Comando Name: cmdElipse
Caption: Dibujar &Elipse
Top: 2040
6to Botón de Comando Name: cmdCirculo
Caption: Dibujar &círculos y arcos
Top: 2520
7mo Botón de Comando Name: cmdTexto
Caption: Escribir &texto
Top: 3000
8vo Botón de Comnado Name: cmdBorrar
Caption: &Borrar
Top: 3480
PictureBox Name: Monitor
Height: 3735
Width: 4095
Left: 2280
Top: 120
BackColor: Blanco
Cambie la propiedad Caption del formulario para colocar un nombre al programa.
Ahora, copie y pegue el siguiente código, o escriba:
Option Explicit
17. Programación con VB 6.0 Tsu . Enzo Costantini
Private Sub cmdMostrar_Click()
Set Monitor.Picture = LoadPicture("C:WindowsAros.bmp")
End Sub
Private Sub cmdCuadrado_Click()
Monitor.FillStyle=1
Monitor.Line (200, 400)-Step(700, 300), , B
Monitor.Line (1000, 2000)-Step(1000, 1000), vbYellow, BF
Monitor.Line (1000, 2000)-Step(1000, 1000), vbBlack, B
End Sub
Private Sub cmdLinea_Click()
Monitor.Line (200, 400)-(900, 700), vbBlack
Monitor.Line (2500, 500)-(1000, 2500), vbGreen
End Sub
Private Sub cmdPunto_Click()
Dim X As Integer, Y As Double
Monitor.PSet (200, 400), vbRed
Monitor.PSet (600, 500), vbBlue
Monitor.PSet (700, 800), vbGreen
For X = 1 To Monitor.Width
Y = 3 * X ^ (0.75) + 500
Monitor.PSet (X, Monitor.Height - Y), RGB(50, 200, 211)
Next X
End Sub
Private Sub cmdElipse_Click()
Monitor.FillStyle = 0
Monitor.FillColor = vbRed
Monitor.Circle (1200, 1200), 500, vbBlue, , , 2 / 3
End Sub
Private Sub cmdCirculo_Click()
Const Pi = 3.1415927
Monitor.FillStyle=1
Monitor.Circle (3000, 800), 300, vbRed
Monitor.Circle (2500, 2500), 700, vbBlack, Pi / 2, Pi
End Sub
Private Sub cmdTexto_Click()
Monitor.CurrentX = 2500
Monitor.CurrentY = 3000
Monitor.ForeColor = vbBlue
Monitor.Print "Muestra de texto"
End Sub
Private Sub cmdBorrar_Click()
Set Monitor.Picture = LoadPicture
End Sub
Ejecute e interactúe con el programa. La explicación del programa se encuentra en la
Sección Detallada de Programas.
MARCOS (FRAME):
18. Programación con VB 6.0 Tsu . Enzo Costantini
Los Marcos actúan como agrupadores y contenedores de otros controles. Por ejemplo se
puede utilizar para agrupar botones de opción para que el usuario elija una de las opciones
presentadas o casillas de verificación para elegir varias opciones.
Puede colocar cualquier control sobre él y al colocarlo el control hará referencia con sus
propiedades top y left al marco y no al formulario.
(La explicación de los botones de opción puede encontrarla más adelante durante la
descripción de los controles)
Programa #5. ¿Dónde estudiar?
En este programa se utilizarán dos controles marcos (Frame) para agrupar botones de
opción. Para ello se deben seguir los siguientes pasos:
• Dibujar una etiqueta en la parte superior del formulario, con las siguientes propiedades
Caption: (Borre su contenido)
Height: 375
Width: 4575
Left: 120
Top: 120
BorderStyle: 1 – Fixed Single
• Dibujar ahora un control Frame (marco) con las siguientes propiedades:
Caption: Carrera
Height: 1575
Width: 2055
Left: 120
Top: 600
• Colocar un botón de opción dentro del marco. Colocando el nombre optCarrera y
Caption igual a Ingeniería.
• Se va a crear una matriz de controles, para ello, se debe copiar el botón de opción y al
pegar se desplegará un mensaje de diálogo que preguntará. ¿Desea crear una matriz
de controles? Responda Si. Se pegará un control cuyo Caption se debe cambiar a
Arquitectura. Después corte este control, seleccione el marco (haga clic sobre él) y
pegue el control. Esto se hace para asegurar que el control quede dentro del marco
seleccionado. Luego, colóquelo debajo del anterior botón de opción. Después, se debe
pegar otro control (botón de opción) como matriz de control cuyo Caption va a cambiar
a Letras.
• Ahora se colocará otro control Frame (marco), se dibujará este control sobre el
formulario asignando las siguientes propiedades:
Caption: Institución
Height: 1575
Width: 2415
Left: 2280
Top: 600
• Se van a colocar también tres botones de opción, el nombre para el primero es (no su
Caption, sino su propiedad Name) es optInstitucion, cree la matriz de controles y
colóquelos dentro de este marco, sus caption respectivos son: Universidad Nacional,
Universidad Estatal y universidad Municipal.
• Se asigna a la propiedad TabIndex del botón de opción que dice Universidad Nacional
el valor cero (0).
• Coloque debajo de los marcos un botón de comando con Caption igual a &Salir.
• Ahora le toca el paso a la codificación:
Copie y pegue el siguiente código o escriba:
19. Programación con VB 6.0 Tsu . Enzo Costantini
Public strCarrera As String, strInstitucion As String
Private Sub optCarrera_Click(Index As Integer)
strCarrera = optCarrera(Index).Caption
Call Display
End Sub
Private Sub optInstitucion_Click(Index As Integer)
strInstitucion = optInstitucion(Index).Caption
Call Display
End Sub
Private Sub Display()
Label1.Caption = "Ha decidido estudiar " & strCarrera & _
" en la " & strInstitucion
End Sub
Private Sub Command1_Click()
Unload Me
End Sub
BOTONES DE COMANDO (COMMANDBUTTON):
Ya se ha trabajado un poco con ellos, su finalidad es de generar acciones cuando se hace
clic sobre ellos, pueden tomar el enfoque con el método SetFocus y el evento principal es el evento
clic.
Otra propiedad que se puede mencionar es Default. Ésta sólo puede tomar el valor
verdadero o falso y determina qué control CommandButton es el botón de comando
predeterminado en un formulario. Sólo un botón de comando de un formulario puede tener esta
propiedad como verdadera. Así, si cualquier control del formulario tiene el enfoque al presionar la
tecla Enter llama al evento clic del nombre del control.
Por ahora, no realizaremos programas para aplicar esta propiedad.
CASILLAS DE VERIFICACIÓN (CHECKBOX):
Las Casillas de Verificación funcionan también como botones de opción, pero en este caso
se puede seleccionar cualquier número de casillas, se puede seleccionar ninguna, una o más de
una opción.
La propiedad más importante de este control es Value, que puede tomar tres valores:
• Desactivada: En este caso la propiedad Value toma el Valor 0 o también
vbUnchecked.
• Activada: La propiedad Value toma el valor 1 o vbChecked.
• No Disponible: La propiedad Value toma el valor 2 o vbGrayed. Este caso se
utiliza si desea deshabilitar el control.
Si el control está habilitado, éste responde al evento clic cambiando su propiedad value a
activado o desactivado, según sea el caso, si se presiona doble clic el control reconoce cada clic
por separado quedando en el mismo estado.
Puede crear un acceso directo si antepone el signo & a la letra en la propiedad Caption, así
al presionar la combinación Alt+Letra se llevará a cabo el evento clic.
Si no desea que la casilla muestre un texto en su propiedad Caption sino que muestre una
figura, puede utilizar la propiedad Picture y Style para asignar la imagen a el control.
Programa #6. Contrato:
20. Programación con VB 6.0 Tsu . Enzo Costantini
Este programa tiene la finalidad de utilizar el control CheckBox, se debe crear un proyecto
nuevo y en el formulario colocar tres controles CheckBox, con los siguientes Captions:
1. &Entre 20 y 30 años
2. &Tiene experiencia en el área
3. &Bilingüe
Ahora, para continuar se colocará un botón de comando debajo de las casillas de
verificación, con Caption: &Contratar?.
Para finalizar se agrega debajo del botón de comando una etiqueta con las siguientes
propiedades:
• Caption: (Sin contenido)
• Font: Tamaño:12 – Negrita
• Autosize=True (verdadero)
• Alignment: 2 – center
Si se quiere puede cambiar el caption del formulario a Requisitos
A continuación se debe agregar el siguiente código en la pantalla del formulario:
Private Sub Command1_Click()
If Check1 = vbChecked And Check2 = 1 And Check3 = 1 Then
Label1.Caption = "Si contratar"
Else
Label1.Caption = "No contratar"
End If
End Sub
Al ejecutar el programa se verifica que si el aspirante cumple con los tres requisitos debe
ser contratado y no aquellos que sólo cumplen menos.
BOTONES DE OPCIÓN (OPTIONBUTTON):
Tienen la finalidad de presentar un conjunto de opciones al usuario con el propósito que
sólo pueda elegir una.
Los grupos de botones deben estar agrupados, para ello, deben estar colocado en el
mismo control o formulario, es decir, los botones de opción que se encuentran directamente
encima del formulario se agruparán y sólo se podría elegir una de ellas, aquellas que se
encuentran dentro de un marco (Frame) se separarán de las primeras y de éstas se podría escoger
otra opción, asimismo aquellas que están dentro de un PictureBox.
Si durante una prueba se observa que se pudo escoger más de una opción es porque el
botón de opción no quedó agrupado sino que quedó fuera del área del grupo y por lo tanto debe,
mediante el diseño, reubicarlo. Para asegurar que el control quede dentro del área del grupo se
debe:
• Dibujar el botón de opción en cualquier lugar.
• Corte el botón de opción.
• Seleccionar (mediante un clic) el control o el formulario donde se desea colocar.
• Pegar el botón de opción.
• Ubicarlo en la posición que se desea.
Se puede crear un acceso directo si antepone el signo & a la letra en la propiedad Caption,
así al presionar la combinación Alt+Letra se llevará a cabo el evento clic, es decir, la selección.
El programa que ejemplifica este control es el Programa #5.
21. Programación con VB 6.0 Tsu . Enzo Costantini
CONTROL LISTBOX (CUADRO DE LISTA):
Los cuadros de lista es un control que tiene la finalidad de presentar una lista de elementos
al usuario de tal manera que éste escoja una o varias opciones, o puede también utilizarse para
enlistar elementos en tiempo de ejecución.
Los elementos pueden colocarse en la lista en tiempo de diseño o en tiempo de ejecución.
Para agregarlos en tiempo de diseño, se debe rellenar la propiedad List (en la ventana
Propiedades) con los elementos que se deseen, en este caso, cada vez que se coloque un
elemento se presiona la combinación de teclas Control+Enter para pasar a la siguiente línea, al
siguiente elemento.
Para agregarlos en tiempo de ejecución se utiliza la instrucción Additem, de la siguiente
manera:
Lista.Additem "Elemento" [, índice]
Donde Lista es el nombre de la lista, Elemento es una cadena de caracteres de texto o
número que se va a agregar a la lista y el índice es opcional y ofrece la opción de ubicar el
elemento en algún lugar especificado de la lista. La lista enumera los elementos desde el número 0
(primer elemento) hasta el último que tendría como valor de índice el número de elementos menos
uno. Si en la instrucción Additem no se incluye el índice, la lista colocará el elemento al final de la
lista, de manera que si se desea colocar primero se escribirá el siguiente código:
Lista.Additem Elemento, 0
Al colocar el elemento en esta posición, los otros elementos se reindexarán y pasarán a
ocupar una nueva posición, el primero pasa a ser el segundo (1), el segundo pasa a tercero (2) y
así sucesivamente. Si se agregan en una posición inválida que sobrepase la numeración de los
elementos se producirá un error.
Si desea agregar una lista de elementos a la lista de un formulario en tiempo de ejecución,
de tal manera que el usuario escoga una o varias, puede agregarlo mediante el método Additem en
el evento Load del formulario, es decir Private Sub Form_Load(), de manera que los
elementos aparecerán cargados en la lista a la hora de cargar el formulario.
Para eliminar un elemento de la lista en tiempo de ejecución se utiliza la instrucción
RemoveItem, de la siguiente manera:
Lista.RemoveItem índice
Sólo se pueden eliminar elementos mediante su número de índice, para obtener el número
de índice de un elemento seleccionado se utiliza la propiedad Lista.ListIndex, de tal manera que
para eliminar un elemento seleccionado se debe escribir:
If Lista.ListIndex>=0 Then
Lista.RemoveItem Lista.ListIndex
End if
Si no existe un elemento seleccionado la propiedad ListIndex toma el valor –1, por lo tanto
se le antecede la sentencia IF asegurando que haya seleccionado un elemento. Si no se coloca
esta sentencia y no hay elementos seleccionados en la lista el programa genera un error.
La instrucción para obtener el número de elementos de una lista es ListCount, de forma
que el índice del último elemento es ListCount – 1.
Otra propiedad que se utiliza con este control es List. Esta propiedad, guarda cada
elemento de la lista en una matriz, de modo que para obtener un elemento en particular utilice la
codificación:
Lista.List(índice)
Por ejemplo, la secuencia Lista.List(1) devuelve el segundo elemento mostrado en la lista.
La manera para quitar todos los elementos de una lista es el método Clear:
Lista.Clear
22. Programación con VB 6.0 Tsu . Enzo Costantini
Programa #7. Coordenadas:
Este programa utiliza una lista para ordenar puntos de coordenadas X, Y. Grafica estos
puntos en un PictureBox.
Para este fin, se deben colocar una lista, dos etiquetas, dos cuadros de texto, un cuadro de
imagen y tres botones de comando.
A continuación, se muestran las propiedades Name que deben tener estos controles:
Control Name
Cuadro de texto 1 txtX
Cuadro de texto 2 txtY
Lista 1 lstPuntos
Botón de Comando 1 cmdIngresar
Botón de Comando 2 cmdEliminar
Botón de Comando 3 cmdBorrar
Cuadro de Imagen 1 Monitor
Las propiedades Height y Width del Monitor son 2175 cada una.
Se deben ubicar los controles de tal manera que se observen de la siguiente manera:
Copie y pegue el siguiente código o escriba:
Option Explicit
Private Sub txtX_Change()
cmdIngresar.Enabled = (Len(txtX) > 0 And Len(txtY) > 0)
End Sub
Private Sub txtX_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
txtY.SetFocus
End If
End Sub
Private Sub txtY_Change()
cmdIngresar.Enabled = (Len(txtX) > 0 And Len(txtY) > 0)
End Sub
Private Sub txtY_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If cmdIngresar.Enabled = True Then
23. Programación con VB 6.0 Tsu . Enzo Costantini
cmdIngresar.SetFocus
Else
txtX.SetFocus
End If
End If
End Sub
Private Sub cmdIngresar_Click()
Dim X As Integer, Y As Integer
X = CInt(txtX)
Y = CInt(txtY)
Monitor.Circle (X, Y), 30, vbRed
lstPuntos.AddItem "(" & X & "," & Y & ")"
txtX = ""
txtY = ""
txtX.SetFocus
End Sub
Private Sub cmdEliminar_Click()
If lstPuntos.ListIndex >= 0 Then
lstPuntos.RemoveItem lstPuntos.ListIndex
End If
End Sub
Private Sub cmdBorrar_Click()
lstPuntos.Clear
Monitor.Refresh
End Sub
Se puede interactuar un poco con el programa para relacionarse con los comandos y
funciones de cada botón de comando, lista y control PictureBox.
Es importante resaltar que, en este caso, aunque se elimine de la lista las coordenadas de
un punto, no se borra éste del cuadro de imagen. Esto se hace debido a que todavía no se tienen
las herramientas necesarias para generar dichos procedimientos, esto es sólo un ejemplo de cómo
se utiliza el control ListBox y por lo tanto se dejaron a un lado estas posibilidades.
Para obtener más detalles sobre este programa dirigirse a la Sección Detallada de
Programas al final de este tomo.
Puede ver también el ejemplo del control ComboBox para ver otra utilidad de los cuadros
de lista.
Guarde este programa ya que lo utilizará mas adelante cuando se introduzca en el tema
del trabajo con ficheros.
CONTROL COMBOBOX (CUADRO COMBINADO):
Este control combina las posibilidades de una lista con un cuadro de texto, de manera que
presenta la posibilidad de elegir de una lista un elemento de interés, pero además, puede obviar
cualquier opción y escribir sobre el control mediante la propiedad text. Por lo tanto, posee además
de las propiedades, métodos y eventos de la lista, también los de los cuadros de texto.
Programa #8. Número de Mes:
A continuación la elaboración de un programa para observar una de las utilidades del
control ComboBox:
Para ello se debe agregar al formulario:
• Una etiqueta de Caption: Mes Nro:
• A su lado un cuadro de texto de nombre Text1 (no cambiar)
24. Programación con VB 6.0 Tsu . Enzo Costantini
• Un botón de comando de nombre Command1 (no cambiar) y Caption: Escribir Mes
• Un control ComboBox (Cuadro combinado) de nombre Combo1 (no cambiar).
Se debe agregar al formulario el siguiente código:
Private Sub Form_Load()
Combo1.AddItem "Enero"
Combo1.AddItem "Febrero"
Combo1.AddItem "Marzo"
Combo1.AddItem "Abril"
Combo1.AddItem "Mayo"
Combo1.AddItem "Junio"
Combo1.AddItem "Julio"
Combo1.AddItem "Agosto"
Combo1.AddItem "Septiembre"
Combo1.AddItem "Octubre"
Combo1.AddItem "Noviembre"
Combo1.AddItem "Diciembre"
End Sub
Private Sub Command1_Click()
Dim Mes As Byte
Select Case Combo1.Text
Case "Enero": Mes = 1
Case "Febrero": Mes = 2
Case "Marzo": Mes = 3
Case "Abril": Mes = 4
Case "Mayo": Mes = 5
Case "Junio": Mes = 6
Case "Julio": Mes = 7
Case "Agosto": Mes = 8
Case "Septiembre": Mes = 9
Case "Octubre": Mes = 10
Case "Noviembre": Mes = 11
Case "Diciembre": Mes = 12
Case Else
MsgBox "Error en el mes. Corrija para continuar"
End Select
Text1 = Mes
End Sub
Al ejecutar la aplicación, se debe seleccionar un mes y presionar el botón de comando, se
desplegará en el cuadro de texto en número de mes correspondiente. Para obtener los detalles de
la programación se puede dirigir a la Sección Detallada de Programas.
Es muy importante resaltar que los cuadros de lista y el cuadro combinado tienen funciones
similares, sin embargo pueden tener distintas funciones según el programa.
En el caso del ejemplo del cuadro de lista se utilizó para enlistar un conjunto de puntos que
se iban dibujando en el cuadro de imagen, además los elementos (puntos) se encerraban en
paréntesis y se separaban las variables por comas. En el caso del ejemplo del cuadro combinado
se utilizó para desplegar una lista en el cual el usuario podía elegir una opción; en este ejemplo
también se pudo utilizar un cuadro de lista sin embargo se quiso que ambos ejemplos sirvieran
para ambos casos de manera que el lector pueda asociar las distintas funciones que pueden tener
estos controles a la hora de programar.
25. Programación con VB 6.0 Tsu . Enzo Costantini
CONTROLES HSCROLLBAR Y VSCROLLBAR: BARRAS DE DESPLAZAMIENTO.
Las barras de desplazamiento se utilizan en las aplicaciones para desplazarse horizontal o
verticalmente cuando halla una cantidad grande de información o cuando los controles toman gran
tamaño.
Estas tienen la misma finalidad de aquellas que aparecen en los cuadros de texto cuando
el contenido de su propiedad text sobrepasa el ancho y/o el alto del mismo o también las que
aparecen en un cuadro de lista o combinado cuando el número de elementos es mayor al tamaño
designado para la muestra de ellos. Esta tiene la finalidad de mostrar elementos también
contenidos en el control que no se pueden ver inmediatamente por el reducido tamaño del mismo.
Aunque tienen la misma finalidad este control no son iguales ya que las primeras aparecen por
defecto y en este caso se promueve mediante los métodos del control.
Programa #9. Mirar el contenido de una etiqueta:
El siguiente programa sugiere mediante la utilización de la barra de desplazamiento ver el
contenido de una etiqueta cuyo interior no se podía observar completamente por el reducido
tamaño de la etiqueta.
Para ello se deben colocar los controles de la izquierda con las propiedades de la derecha:
Control Propiedades
• Cuadro de texto (TextBox) Nombre: Text1 (no cambiar)
Height: 285
Width: 1575
Left: 0
Top: 0
• Cuadro de Imagen (PictureBox) Nombre: Picture1 (no cambiar)
BorderStyle: 1 – Fixed Single
Height: 495
Width: 1575
Left: 0
Top: 360
• Botón de Comando (CommandButton) Nombre: Command1 (no cambiar)
Caption: Asignar
Height: 285
Width: 975
Left: 1680
Top: 0
• Barra de desplazamiento Horizontal Nombre: HScroll1 (no cambiar)
(HScrollBar) Height: 255
Width: 1575
Left: 0
Top: 960
Visible: False
• Etiqueta (Label) Nombre: Label1 (no cambiar)
Nota: la etiqueta estará insertada dentro del AutoSize: True (verdadero)
control cuadro de imagen. Para ello córtela BorderStyle: 0 – None
de donde esté, seleccione el cuadro de Caption: (Borrar contenido)
imagen con un clic y pegue la etiqueta. Height: 195
Ahora, se procederá a colocar el siguiente código dentro la ventana de código del formulario:
Option Explicit
Private Sub Command1_Click()
Form1.ScaleMode = vbCharacters
Picture1.ScaleMode = vbCharacters
Label1.Move 0, 0
26. Programación con VB 6.0 Tsu . Enzo Costantini
Label1.Caption = Text1
HScroll1.Max = Label1.Width - Picture1.Width + 1
HScroll1.Visible = (Picture1.Width < Label1.Width)
End Sub
Private Sub HScroll1_Change()
Label1.Left = -HScroll1.Value
End Sub
Ejecute el programa y coloque en el cuadro de texto una cadena de números o textos más
grande que el tamaño del cuadro de imagen, luego haga clic en el botón de comando, aparecerá la
barra de desplazamiento horizontal permitiendo desplazarse para ver el contenido completo de la
etiqueta. Si coloca un número de menos caracteres no aparecerá la barra.
Para obtener la explicación del programa detalladamente, se puede dirigir a la Sección
Detallada de Programas.
Puede utilizar la barra de desplazamiento también para observar completamente una
imagen contenida dentro de un control cuadro de imagen. Esto es muy útil ya que el cuadro de
imagen no muestra la imagen completa si su tamaño es menor. Se puede entonces colocar un
Picture2 dentro de un Picture1 y seguir la secuencia semejante a como se hizo con la etiqueta,
colocando además una barra de desplazamiento vertical.
CONTROL TIMER (CONTROL DE TIEMPO – RELOJ)
Este control es muy útil para crear aplicaciones donde necesite llevar un control de tiempo,
ya sea que utilice el reloj del computador como contador o rector de las actividades del computador,
o cree un nuevo contador de segundos, horas y minutos que comience desde cero, como es el caso
del ejemplo que se muestra más delante de esta sección.
El control Timer tiene dos propiedades principales, ellas son Enabled e Interval. La
propiedad Enabled comienza el funcionamiento del control de tiempo y la propiedad Interval que
genera un evento Timer cada vez que se cumple el valor que contiene (en milisegundos), es decir, si
la propiedad Interval tiene el valor 1000 (1000 milisegundos = 1 segundo) se llama al evento Timer
cada segundo.
Programa #10. Cyber:
El siguiente programa da un ejemplo de un contador de un cyber. Muestra la hora del
computador, un contador de tiempo de uso y el precio por el tiempo de uso.
Para la realización de este programa se deben agregar 6 etiquetas. Las tres primeras (de
nombres Label1, Label2 y Label3) se colocan en la parte inferior del formulario y sirven para mostrar
las variables del uso del computador, por ello fue borrado el contenido de la propiedad Caption de
cada una.
Las demás tienen propiedades:
Label4 Caption: Hora
Label5 Caption: Tiempo de uso
Label6 Caption: Precio
Se agregó además, por supuesto, el control Timer. Es muy importante resaltar que este
control no es visible en tiempo de ejecución. Y por ello no tiene propiedades de tamaño, ni opciones
de borde, color de fondo, y otras similares; ya que no son relevantes.
Al control Timer se le asignaron las propiedades Interval=1000 y Enabled = True
Luego se colocaron los controles de la siguiente manera:
La ubicación del control Timer tampoco es relevante.
27. Programación con VB 6.0 Tsu . Enzo Costantini
Luego se procede a agregar a la ventana de código del programa las siguientes
sentencias:
Option Explicit
Private Sub Timer1_Timer()
Static Segundos As Byte, Minutos As Byte, _
Horas As Integer, Precio As Double, Contador As Long
Contador = Contador + 1
Label1 = Time
If Segundos < 59 Then
Segundos = Segundos + 1
Else
Segundos = 0
If Minutos < 59 Then
Minutos = Minutos + 1
Else
Minutos = 0
Horas = Horas + 1
End If
End If
Label2 = Format(Horas, "##00") + ":" + _
Format(Minutos, "##00") + ":" + Format(Segundos, "##00")
Precio = CDbl(Contador * 1200 / 3600)
If Precio < 100 Then
Precio = 100
End If
Label3 = Format(Precio, "##,##00.00")
End Sub
Puede ejecutar el programa para observar su funcionalidad. Para obtener una explicación
detallada del programa diríjase a la Sección Detallada de Programas.
CONTROLES
• CONTROL DRIVELISTBOX: LISTA DE UNIDADES DE DISCOS
• CONTROL DIRLISTBOX: LISTA DE DIRECTORIOS
• CONTROL FILELISTBOX:: LISTA DE ARCHIVOS
Estos controles se agruparon en uno ya que tienen finalidades semejantes. El caso de las
listas de unidades de disco, muestran un cuadro combinado con las unidades de disco presentes
en su computador. La propiedad más importante de este control es la propiedad Drive que
devuelve o establece la unidad seleccionada en tiempo de ejecución.
Las listas de directorios muestran las distintas carpetas de directorio que están grabadas
dentro del computador. la propiedad más importante de ésta es la propiedad Path que devuelve o
establece la ruta de acceso actual.
La listas de archivos muestran la lista de archivos de un directorio seleccionado. También
tiene la propiedad Path con las misma función que las listas de directorio, a diferencia que éste
muestra la lista de archivos y no la de directorio. También contiene la propiedad Patern que
28. Programación con VB 6.0 Tsu . Enzo Costantini
muestra sólo la extensión de algún tipo de archivo. Es útil por ejemplo, si quiere mostrar sólo
archivos de extensión *.exe, *.doc, u otro.
Programa #11. Directorio:
El siguiente programa combina los tres tipos de cuadros visto anteriormente: DriveListBox,
DirListBox y FileListBox para mostrar los documentos de word (*.doc) de una carpeta.
Para ello, se debe agregar a un formulario una lista de unidades, una de directorio y una de
archivos:
Luego, se debe copiar y pegar, o escribir:
Private Sub Form_Load()
Dir1_Change
End Sub
Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
End Sub
Private Sub Dir1_Change()
File1.Pattern = "*.doc"
File1.Path = Dir1.Path
End Sub
Ejecute el programa y ubique las diferentes unidades de disco, directorio y verifique que la
lista de archivos corresponde a los archivos de word (*.doc) de la carpeta, es recomendado buscar
la carpeta Mis Documentos.
La explicación detallada de la codificación la puede encontrar en la Sección Detallada de
Programas.
CONTROL SHAPE: FORMAS
El control Shape permite crear figuras sin necesidad de escribir código, tiene varias
propiedades que se explicarán a continuación:
Propiedad Shape:
Es la más común y permite dibujar distintos tipos de figura sin escribir código, por ejemplo:
agregue un control Shape a un formulario y cambie la propiedad Shape (en la Ventana de
Propiedades del Control) presionando doble clic o eligiendo de la lista, la forma va cambiando
según vaya cambiando su propiedad Shape, se pueden crear las siguientes figuras:
Figura Nro de Estilo Constante
Rectángulo 0 vbShapeRectangle
Cuadrado 1 vbShapeSquare
Elipse 2 vbShapeOval
Círculo 3 vbShapeCircle
Rectángulo redondeado 4 vbShapeRoundedRectangle
Cuadrado redondeado 5 vbShapeRoundedSquare
Las constantes se utilizan para cambiar la forma del control en tiempo de ejecución, o se
puede colocar su forma abreviada mediante su número correspondiente.
Propiedad FillStyle:
Se refiere al estilo del relleno del control. Si se encuentra en la forma Transparente = 1, la
propiedad FillColor queda deshabilitada, de tal manera que no habrá color de relleno. Los distintos
29. Programación con VB 6.0 Tsu . Enzo Costantini
estilo de la propiedades FillStyle pueden obtenerse en el Examinador de Objetos introduciendo la
palabra FillStyleConstants.
Para cambiar el grosor del borde utilice la propiedad BorderWidth, el grosor
predeterminado es uno, de tal manera que los números mayores a uno serán mas gruesos que la
predeterminada. No se aceptan valores menores a uno, ni valores decimales.
Para cambiar el color del borde elija el tipo de borde con la propiedad BorderStyle y cambie
la propiedad BorderColor y DrawMode al de su preferencia.
Los estilos de borde también se pueden obtener en el Examinador de objeto introduciendo
la palabra BorderStyleConstants.
No se procedió a realizar un programa con este control ya que su funcionalidad y
aplicación es muy fácil verla sólo con la explicación.
CONTROL LINE: LÍNEA
Este control sólo tiene una finalidad decorativa de los formularios o puede agregarlas
dentro de otro control como cuadro de imagen (PictureBox), marcos (Frame) u otros
Puede agregar líneas y cambiar su grosor, estilo, color, puede ubicarla según las
coordenadas y hacerlas visibles o invisibles.
Tampoco se procedió a realizar un programa con este control ya que su funcionalidad y
aplicación es muy fácil verla sólo con la explicación.
CONTROL IMAGE: IMAGEN
Este control también se utiliza para mostrar imágenes, acepta los mismos formatos que los
cuadros de imagen (PictureBox). La diferencia principal radica en que este control puede reducir el
tamaño de la imagen para adaptarlo al tamaño del control, lo que no sucede con el control
PictoreBox. Para ello; ya sea en tiempo de diseño o de ejecución, establezca la propiedad Stretch
a True (verdadero) antes de cargar la imagen. Para cargar la imagen en tiempo de diseño utilice la
propiedad Picture y en tiempo de ejecución utilice la secuencia:
Set Imagen.Picture=LoadPicture(Ruta)
Donde, imagen es el nombre del control y Ruta es una cadena de texto con la ruta a la
imagen que desea mostrar.
Si la imagen es pequeña y la propiedad Stretch es True (verdadera), la imagen pierde
calidad al adaptarse al tamaño del control.
Si la propiedad Stretch esta establecida a False (Falso) el control cambia de tamaño
adaptándose al tamaño de la imagen.
CONTROL DATA: DATOS
Este control se utiliza para visualizar datos que se encuentran dentro de una base de
datos. Ofrece acceso a varios tipos de bases de datos como Excel, Access, FoxPro, dBASE o
incluso Lotus 1-2-3.
Al agregarlo a un formulario puede tener acceso a la base de datos incluso sin escribir
código.
Para utilizar este control mediante un ejemplo se deben seguir los siguientes pasos:
1. Cree un archivo de Excel, rellene las casillas de la siguiente manera, o rellene las
casillas como una base de datos Excel con los datos que prefiera (esto es sólo una
opción):
2. Guarde el Archivo, con un nombre y en una carpeta que pueda recordar.
30. Programación con VB 6.0 Tsu . Enzo Costantini
3. Cree un nuevo proyecto de Visual Basic.
4. Agregue un control Data en la parte inferior del formulario.
5. Active la Ventana de Propiedades del control; para ello, presione un clic sobre el
control Data y luego presione la tecla F4.
6. En la ventana Propiedades, establezca la propiedad Connect a Excel 5.0 si tiene Office
97 o a Excel 8.0 si tiene Office 2000.
7. En esta misma ventana de propiedades, introduzca en la propiedad DatabaseName el
nombre de archivo y la ruta mediante el directorio.
8. En propiedades también, haga referencia en la propiedad RecordSource a Hoja1.
9. Agregue un cuadro de texto (TextBox) al formulario. Borre el contenido de su propiedad
Text.
10. En la propiedad DataSource del cuadro de texto haga referencia al control Data1.
11. Por último, en la propiedad DataField enlace al campo que desea mostrar en el cuadro
de texto.
12. Puede agregar otros cuadros de texto y repetir los pasos 9 a 11, cambiando la
propiedad DataField en cada uno para mostrar otros datos de la tabla.
13. Ejecute el programa y presione los diferentes botones del control Data1 para
desplazarse en la base de datos.
En el ejemplo anterior sólo se utilizan controles TextBox para mostrar el contenido de la
base de datos. Sin embargo no es el único control que sirve para visualizar una base de datos, de
hecho existen otros controles cuya función principal es mostrar el contenido de una base de datos
en compañía de un control Data de un formulario. Estos controles son DBGrid, DbList y DBCombo.
Estos controles se pueden agregar al cuadro de herramientas, si desplega el cuadro de
Componentes y elige de la lista Microsoft Dat Bound Grid Control 5.0 (para DBGrid) o Miscrosoft
Data Bound List Controls 6.0 (Para DBList y DBCombo).
Nota: La lista de componentes se desplega haciendo clic con el botón secundario del
mouse sobre el cuadro de Herramientas, Ir a la barra de Menú a la opción Proyecto, luego
Componentes, o simplemente presionando la combinación de teclas Control+T.
Cuando se va a utilizar algunos de estos controles, se debe primero colocar el control Data
que hara referecia a la base de datos en sus propiedades en la secuencia: Connect (que define el
tipo de base de datos), DataBaseName (El nombre de la base de datos en el disco duro) y
RecordSource (La tabla de la base de datos).
Se puede rellenar una lista (Controles DBList o DBCombo) con todos los elementos de una
columna de una base de datos, por ejemplo todos los nombres de los clientes de una base de
datos, todos sus ID o cualquier otra columna. Para enlistarlos se deben rellenar las propiedades de
estos controles (DBList y DBCombo) RowSource y ListField, en ese orden.
Con el control DBGrid puede visualizar todo el contenido de una tabla de una base de
datos si conecta mediante la propiedad DataSource. Para agregar elementos en una base de datos
mediante este control en tiempo de ejecución establezca la propiedad AllowAddNew a True
(Verdadero), se agregará una fila al final de la tabla donde puede escribir. Si desea eliminar
registros establezca la propiedad AllowDelete a True (Verdadero). Puede ver otras propiedades,
métodos y eventos de este control si escribe DBGrid en el Examinador de objetos.
CONTROL OLE: CONTENEDOR OLE
El control contenedor OLE, se utiliza para insertar aplicaciones de documentos. Cuando
inserta un control OLE al formulario se desplega la siguiente pantalla:
31. Programación con VB 6.0 Tsu . Enzo Costantini
De tal manera que se puede crear y agregar un archivo nuevo eligiendo de esta lista el tipo
de archivo con la opción “Crear nuevo” o puede insertar un archivo ya creado mediante la opción
“Crear desde un archivo”. Inserte algunos tipos de archivos nuevos y ya creados desde el
contenedor OLE e interactúe, es muy fácil obtener resultados con este control directamente.
CONTROL MICROSOFT COMMON DIALOG 6.0:
Este control no aparece por defecto en el cuadro de Herramientas, es decir no es un
control intrínseco y debe agregarse mediante la Opción Componentes... que aparece en la Barra
de menú Proyecto – Componentes..., al hacer clic con el botón secundario del mouse sobre el
cuadro de herramientas o simplemente presionando la combinación de teclas (Control + T).
Este control, mediante sus propiedades y métodos, permite mostrar los cuadros de
diálogos comunes que se utilizan en las aplicaciones de Windows. Algunos de estos cuadros de
diálogo son: Abrir, Guardar como, imprimir y otros que se explicarán más detalladamente adelante
en esta sección.
Los métodos de este control son:
Método Cuadro de diálogo que muestra
• ShowColor Cuadro de diálogo para cambiar Colores
• ShowFont Cuadro de diálogo para cambiar Fuente
• ShowHelp Cuadro de diálogo de Ayuda, mediante el sistema de ayuda de Windows
• ShowOpen Cuadro de diálogo para Abrir un Archivo
• ShowPrinter Cuadro de diálogo para Imprimir
• ShowSave Cuadro de diálogo para Guardar archivo.
Estos métodos deben combinarse con algunas de sus propiedades para poder almacenar
datos, abrir documentos o realizar completamente la acción que se desea. Es decir, no basta
mostrar el cuadro de diálogo abrir para abrir un archivo, hace falta algunas propiedades que nos
distingan.
Este control en tiempo de ejecución no es visible, solo puede ver su aplicación en la
aparición de los cuadros de diálogos, en tiempo de diseño este control tiene un tamaño que no se
puede variar.
Las propiedades de este control se encuentran “divididas” según el método, por ejemplo, la
propiedad Filter (que devuelve o establece los filtros que se mostrarán en el cuadro de lista
Archivos de tipo de un cuadro de diálogo) sólo pueden ser utilizados por los métodos Abrir
(ShowOpen) y Guardar (ShowSave) ya que son los únicos cuadros de diálogos que necesitan
especificar un tipo de archivo. De esta manera, se muestran a continuación las diferentes
propiedades del control CommonDialog según los métodos mostrados anteriormente:
Propiedades de los métodos del Control Cuadros de Diálogos Comunes:
32. Programación con VB 6.0 Tsu . Enzo Costantini
Métodos ShowOpen y ShowSave:
Propiedad Filter:
Cuando se muestra el cuadro de diálogo abrir o guardar, en la parte inferior del cuadro de
diálogo aparece una etiqueta que escribe: (Archivos de tipo:). Al su lado aparece un cuadro
combinado que muestra una cierta cantidad de tipos de archivos, si no aparece ningún tipo es
porque todavía no ha establecido la propiedad Filter.
La propiedad Filter es la propiedad que establece el o los tipos de archivos que se pueden
abrir, o el tipo de archivos que se va a guardar.
Para cambiar la propiedad Filter de un control cuadro de diálogo se utiliza la siguiente
sentencia:
NombreCDialog.Filter="DecripciónTipo1|tipo1|DescripciónTipo2|tipo2"
Hasta completar todos los tipos de archivo posibles que pueden ser usados por la
aplicación. Por ejemplo:
En un formulario agregue un botón de comando (Command1) y un Control Common
Dialog, siguiendo los siguientes pasos:
• Diríjase a Proyecto, haga clic sobre Componentes...
• Espere un momento hasta que aparezca la lista de componentes.
• Busque en la lista Microsoft Common Dialog Control 6.0, active su casilla de verificación.
• Haga clic en Aplicar para agregar al cuadro de herramientas y luego en Cerrar para salir de
la lista.
• Seleccione el control Common Dialog que ahora debe aparecer en el cuadro de
herramientas.
• Dibújelo en el formulario.
Ahora agregue el siguiente código, puede copiar y pegar:
Private Sub Command1_Click()
CommonDialog1.Filter = "Mapa de bits (*.bmp)|*.bmp|Archivos JPG
*.jpg|*.jpg|Archivos Animados (*.gif)|*.gif"
CommonDialog1.FilterIndex=2
CommonDialog1.ShowOpen
End Sub
Ejecute la aplicación, presione un clic sobre el botón de comando, se mostrará el cuadro
de diálogo abrir, el mismo en su parte inferior tiene tres tipos de archivos: mapa de bits, Imagen
JPG y archivos animados GIF. La propiedad FilterIndex se utiliza para presentar el tipo de archivo
predeterminado cuando se muestre el cuadro de diálogo; en este caso el número dos (Archivos de
imagen JPG).
Propiedad FileName:
La propiedad FileName devuelve el nombre del archivo que se ha seleccionado cuando se
utiliza el cuadro de diálogo Abrir. Puede utilizarse también para el cuadro de diálogo guardar.
Para ver un ejemplo de esta propiedad puede ver los programas #27 y 28, donde se
encuentra la aplicación de esta propiedad. Se utiliza de la siguiente manera:
Archivo = NombreCDialog.FileName
Donde Archivo es una variable que almacenará una cadena de texto con la ruta y el
nombre del archivo seleccionado, la parte derecha de la igualdad corresponde al archivo
seleccionado del cuadro de diálogo.
Propiedad FileTitle:
Devuelve o establece el nombre (sin la ruta de acceso) del archivo que se va a abrir o
guardar en tiempo de ejecución.
33. Programación con VB 6.0 Tsu . Enzo Costantini
Método ShowPrinter:
Propiedades:
• Copies: Devuelve o establece un valor que determina el número de copias que se van a
imprimir.
• FromPage: Devuelve o establece el valor que indica la primera página que se va a
imprimir.
• ToPage: Devuelve o establece el valor que indica la primera página que se va a imprimir.
• Orientation: Devuelve o establece la orientación del papel de la impresora.
• Min: Establece el intervalo de impresión.
• PrinterDefault: Determina si las selecciones de un usuario en cuadro de diálogo Imprimir
se usan para cambiar la configuración predeterminada de la impresora.
Método ShowColor:
Sólo tiene la propiedad Color que devuelve o establece el color seleccionado en el cuadro
de diálogo, por ejemplo:
Private Sub ColorDelCirculo_Click()
Dim ColorCirculo As Variant
CommonDialog1.ShowColor
ColorCirculo = CommonDialog2.Color
Picture1.Circle (X,Y), Radio, ColorCirculo
End Sub
Este código dibuja un círculo en las coordenadas x, y de cualquier radio con el color
seleccionado en el cuadro de diálogo.
Método ShowFont:
Las propiedades del método ShowFont se refieren al tipo de fuente, son las siguientes:
• FontBold: Es un dato tipo boolean que es verdadero si la fuente es negrita, o falso
si no lo es.
• FontItalic: También es un dato tipo boolean que es verdadero para producir
fuentes cursivas.
• FontUnderLine: Es tipo boolean al que se asigna verdadero para producir fuentes
subrayadas.
• FontName: Es una cadena de texto que contiene el nombre del tipo de fuente a
utilizar. Ejemplo: Arial, Times New Roman u otras.
• FontSize: Es un dato tipo Single que asigna un valor de tamaño (en puntos) a la
fuente.
• FontStrikeThru: También es un dato tipo boolean que es verdadero para producir
fuentes tachadas.
Método ShowHelp:
• HelpCommand: Devuelve o establece el tipo de Ayuda en pantalla solicitada.
• HelpContext: Devuelve o establece el Id de contexto para el tema de Ayuda
solicitado.
• HelpFile: Devuelve o establece el nombre del archivo de Ayuda asociado con el
proyecto.
• HelpKey: Devuelve o establece la palabra clave que identifica el tema de Ayuda
solicitado.
34. Programación con VB 6.0 Tsu . Enzo Costantini
5. VARIABLES, TIPOS DE DATOS Y CONSTANTES:
• Variables:
Durante la creación de una aplicación en VB 6.0, puede que necesite almacenar
temporalmente valores numéricos, cadenas de texto u otro tipo de dato y luego poder cambiarlos
operando con ellos, hacer cálculos o mostrar resultados; para este fin se utilizan las variables.
Las variables utilizan un nombre para identificarse en el código, este nombre almacena un
tipo de dato mediante la utilización de un operador de asignación (signo igual =) y se puede
cambiar operando con ellos ya sea sumando o multiplicando valores (cualquier función
matemática) o agregando caracteres a una cadena de texto (para el caso de cadenas de texto).
Ejemplo:
Variable1 = 45
Variable2 = "Cadena de Texto"
Aquí, Variable1 es el nombre de la variable, luego se presenta el signo igual de asignación
y luego 45 que es el dato que desea almacenarse. El ejemplo de la Variable2 almacena una
cadena de texto, se identifica por estar encerrada entre comillas. Un ejemplo de operaciones con
variables sería:
Variable1 = 45
Variable2 = 30
Variable1 = Variable1 + Variable2
En este caso es muy importante resaltar que, la tercera línea de instrucción el signo igual
no representa una ecuación de igualdad sino una asignación. La primera línea asigna el valor 45 a
Variable1, en la segunda línea se asigna 30 a la Variable2. En la tercera línea se realiza una
operación de suma (Variable1+ Variable2 = 45+30 ) que se asigna a Variable1, por ello el valor de
Variable1 cambia de 45 a 75. En este caso se pudo utilizar una Variable3 que guardara el valor de
la suma, pero de la forma como se desarrolló permitió la economía de memoria ya que utilizó una
variable menos.
• Declarar variables:
Para declarar variables se utiliza la Sentencia:
Dim Variable [As Tipo]
Donde, Dim le dice al programa que cree una nueva variable con el nombre Variable, y [As
Tipo] es opcional y declara el tipo de dato que se desea almacenar, sino se coloca el programa
crea una variable tipo Variant (ver más delante de que se trata). Por ejemplo: Dim MiCadena As
String, prepara una variable de nombre MiCadena para almacenar cadenas de texto.
Las variables una vez declaradas no distingue entre mayúsculas y minúsculas, es decir si
se declaró la variable con nombre MiCadena, cuando se escriba micadena, Micadena, miCadena u
otro nombre con otras mayúsculas y minúsculas, el programa cambiará el nombre colocando
MiCadena, que es el nombre original, es decir, aunque cambie mayúsculas y minúsculas será la
misma variable.
Nombres de variables permitidos:
Como ya se dijo, las variables deben tener un nombre. Se debe elegir un nombre que siga
las siguientes reglas:
• No puede empezar por un número, mas bien, debe empezar por una letra
(mayúscula o minúscula)
• No puede tener más de 255 caracteres.
35. Programación con VB 6.0 Tsu . Enzo Costantini
• No puede ser igual a una palabra clave de Visual Basic. No puede ser por ejemplo
Dim, If, Then, For, String, etc.
• No puede incluir caracteres especiales como asterisco, punto, signo de admiración
o interrogación, u otros.
• Pueden tener el mismo nombre siempre y cuando estén en procedimientos
diferentes.
Si declara una variable dentro de un procedimiento, una vez terminada la secuencia del
procedimiento, se perderá el valor de la misma, para evitar esto se deberá declarar la variables de
forma:
Static Variable [As Tipo]
Esto permitirá que se preserve el valor de la variable cuando se termine el procedimiento, y
cuando se vuelva a llamar al procedimiento la variable tendrá el último valor asignado a ella.
Hay variables que se necesitan que puedan modificarse desde diferentes procedimientos
para esto, se debe declarar las variables en la sección de declaraciones del formulario (líneas
superiores del código del formulario) de la siguiente forma:
Public Variable [As Tipo] , o también
Dim Variable [As Tipo]
Dos variables de procedimientos separados pueden tener un mismo nombre y no serán la
misma variable.
Programa #12. Contadores de Variables:
El siguiente programa tiene por finalidad relacionarse con distintos tipos de variables. Para
ello, se deben agregar dos botones de comando y cuatro etiquetas a un formulario. Luego, se debe
escribir el siguiente código o copie y pegue:
Option Explicit
Public Variable As Integer
Private Sub Command1_Click()
Dim Variable1 As Integer
Static Variable2 As Integer
Variable1 = Variable1 + 1
Variable2 = Variable2 + 1
Variable = Variable + 1
Label1 = Variable1
Label2 = Variable2
Label4 = Variable
End Sub
Private Sub Command2_Click()
Static Variable2 As Integer
Variable2 = Variable2 + 1
Variable = Variable + 1
Label3 = Variable2
Label4 = Variable
End Sub
Ejecute el programa e interactúe con el haciendo clic sobre los botones. Verifique como
varían los valores de las variables cada vez que presiona uno de ellos.
Para obtener una información detallada sobre la codificación del programa diríjase a la
Sección Detallada de Programas.
36. Programación con VB 6.0 Tsu . Enzo Costantini
Pero si existe una variable declarada en la sección pública y una variable en un
procedimiento privado, VB 6.0 hará referencia a la variable mas inmediata, es decir, a la variable
del procedimiento mas interno.
Tipos de Datos:
Una buena selección de la variable dentro de un programa promueve un ahorro de
memoria, por lo que se recomienda que se seleccione el tipo adecuado para almacenar los datos
que se desean. Los tipos de datos son los siguientes:
• Boolean: Almacena un valor que puede tomar dos opciones: verdadero (True) o
Falso (False). Un ejemplo de este tipo de dato es la propiedad visible de algunos
controles. Ocupa un espacio en la memoria de 2 bytes.
• Byte: Puede almacenar un número natural que puede estar entre 0 y 255. No
acepta valores negativos. Puede ser utilizado por ejemplo para almacenar edades,
los números de meses del año o los días del mes, etc. Si se realiza una suma o
restan dos números Bytes, el resultado debe ser Byte, debe estar entre 0 y 255, si
no, el programa genera un error de desbordamiento. Ocupa un espacio de 1 byte.
• Integer: Puede almacenar valores enteros desde –32.768 hasta 32.767. Ocupa en
la memoria 2 bytes.
• Long: También puede almacenar valores enteros, pero en este caso tiene una
extensión más grande ya que almacena números entre –2.147.483.648 hasta
2.147.483.647. Ocupa en la memoria 4 bytes.
• Single: Puede almacenar valores numéricos con decimales, tanto negativos como
positivos, es de precisión simple, su rango está entre –1,401298x10 -45 hasta
+1,401298x1045. Ocupa en la memoria 4 bytes.
• Double: También puede almacenar valores numéricos con decimales, negativos y
positivos, pero por tener más memoria asignada puede tener valores de precisión
doble, van desde –4,94065645841247x10-324 hasta 1,79769313486232x10308.
ocupa en la memoria 8 bytes.
• Currency: Este tipo de dato se utiliza para almacenar valores numéricos
monetarios, su rango va desde –922.337.203.685.477,5808 hasta el
922.337.203.685.477,5807.
• String: Se utiliza para almacenar cadenas de texto. Puede tener una longitud fija si
se declara: Dim Variable As String * Longitud, donde longitud es un
número entero que indica el número de caracteres que va a tener la variable. Si
cuando se introduce una cadena, ésta tiene la longitud menor a la cantidad dada
por Longitud, entonces el programa los rellena con espacios en blanco, si la
cantidad de caracteres es mayor entonces se recortará. Ocupa en la memoria de
acuerdo al número de caracteres que contenga (1 byte por carácter).
• Date: Este tipo de dato puede almacenar valores de fechas y horas. Su rango va
para las fechas desde 1/1/100 hasta el 31/12/9999 y para las horas desde 0:00:00
hasta 23:59:59.
• Variant: Este tipo de dato es el que mas memoria consume (16 bytes), pero tiene
una ventaja sobre los otros y es que puede almacenar cualquiera de los tipos de
datos descritos anteriormente, incluso puede cambiar de una cadena a un número,
después guardar una fecha o cualquier otro tipo de dato. Las variables tipo variant
no son declaradas necesariamente puede escribir Dim Variable y VB
reconocerá como si hubiese escrito Dim Variable As Variant.
• Estructuras: Se utiliza para crear un solo tipo de dato (personalizados)
combinando los distintos tipos básicos vistos anteriormente. Estas se explicarán
más adelante en esta misma sección. Su espacio en la memoria es variable de
acuerdo al tipo de datos que combine.
Para declarar una variable a un tipo de dato se declara: