Professional Documents
Culture Documents
Sin más preámbulo ni rollos vamos a lo que realmente nos interesa que
es el aprendizaje de este excitante lenguaje de programación.
Prof.Gerardo Galicia.
Realizado por: Gerardo Francisco Galicia Martínez Programación de base de datos
Formularios y controles.
Formulario
Controles
En principio cada objeto de Visual Basic 6.0 debe tener un nombre, por
medio del cual se hace referencia a dicho objeto. Existe una convención
ampliamente aceptada que es la siguiente: se utilizan siempre tres letras
minúsculas que indican el tipo de control, seguidas por otras letras (la primera
mayúscula, a modo de separación) libremente escogidas por el usuario, que
tienen que hacer referencia al uso que se va a dar a ese control. La Tabla 1
muestra las abreviaturas de los controles más usuales, junto con la
nomenclatura inglesa de la que derivan. En este mismo capítulo se verán unos
cuantos ejemplos de aplicación de estas reglas para construir nombres.
Eventos
Métodos
Los métodos son funciones que también son llamadas desde programa,
pero a diferencia de los procedimientos no son programadas por el usuario,
sino que vienen ya pre-programadas con el lenguaje. Los métodos realizan
tareas típicas, previsibles y comunes para todas las aplicaciones. De ahí que
vengan con el lenguaje y que se libere al usuario de la tarea de programarlos.
Cada tipo de objeto o de control tiene sus propios métodos.
Proyectos y ficheros
1y2
3 4 5
4 Formulario.- Por defecto nos parece esto contendor para ir situando los
controles
Existen otras ventanas para edición de código (Code Editor) y para ver
variables en tiempo de ejecución con el depurador o Debugger (ventanas
Immediate, Locals y Watch). Todo este conjunto de herramientas y de
ventanas es lo que se llama un entorno integrado de desarrollo o IDE
(Integrated Development Environment). Ver fig.3
1 2
4 5
2 Lista de Eventos.- Aquí están presentes todos los eventos disponibles para
cada objeto, cabe aclarar que hay objetos que poseen eventos diferentes a
otros.
Objetivo de la Práctica
Procedimiento:
Podemos
elegir entre
un nuevo
elemento o
uno que se
encuentre
en otro
proyecto.
-
- Si hemos considerado los pasos anteriores nuestra ventana de
proyectos debería lucir de la siguiente manera.
O por medio del menú file-save project. Aparece el siguiente cuadro de dialogo
Nota: El cuadro combinado Tipo, nos indica que elemento estamos guardando,
recordar que el *.vbp para los proyectos, *.cls es para módulos de clases el
*.bas para módulos y el *.frm para los formularios.
Ejercicio 1.
Objetivo de la práctica
Procedimiento:
End Sub
4.- Repetiremos la acción para los demás botones, damos doble clic sobre cada
uno de ellos para acceder al editor de código con su respectivo procedimiento.
- Para el botón Texto (cmdCaption)
Private Sub cmdCaption_Click()
cmdShow.Caption = "Mostrar"
End Sub
- Para el botón Habilitar(cmdEnable)
Private Sub cmdEnable_Click()
cmdShow.Enabled = True
End Sub
- Para el botón Deshabilitar(cmdDisable)
Private Sub cmdDisable_Click()
cmdShow.Enabled = False
End Sub
- Para el botón Regresar(cmdReturn)
Private Sub cmdReturn_Click()
cmdShow.BackColor = &H8000000F
cmdShow.Caption = "..."
cmdShow.Enabled = True
End Sub
- Para el botón Regresar(cmdExit)
Private Sub CmdExit_Click()
End
End Sub
5.- Ahora vamos a ejecutar la aplicación utilizando el menú run-start, otra
forma es presionando la tecla de función f5 o el botón de play de la barra de
herramientas.
Procedimiento:
1.- Abrir un nuevo proyecto de Visual Basic y agregar al formulario 4 etiqueta y
7 botones de comandos con las siguientes propiedades y valores.
Name Caption
lblMensaje Mostrar fecha y hora del sistema
lblFecha Dar doble clic para mostrar la fecha
lblHora Dar un clic para mostrar la hora
lblMuestra Texto de muestra para las propiedades
cmdNegrita Negrita
cmdCursiva Cursiva
cmdSubrayado Subrayado
Prácticas de Visual Basic 6.0 9
Realizado por: Gerardo Francisco Galicia Martínez Programación de base de datos
Name Caption
cmdTamaño Tamaño
cmdFuente Fuente
cmdTachado Tachado
cmdNormal Normal
Objetivo
El alumno aprenderá la importancia de los controles cajas de texto, para
recoger información por el dispositivo de entrada más común como lo es el
teclado, así como sus propiedades, métodos y eventos más importantes.
Prácticas de Visual Basic 6.0 11
Realizado por: Gerardo Francisco Galicia Martínez Programación de base de datos
Procedimiento:
1.- Abrimos un nuevo proyecto en Visual Basic y agregamos 6 etiquetas y le
pones a cada uno el name que gustes.
2.- También agregamos 6 cajas de textos con las siguientes características
6.- Los únicos objetos que van a tener código son txtMayuscula, txtEnter y el
botón de salir.
Objetivo
Prácticas de Visual Basic 6.0 13
Realizado por: Gerardo Francisco Galicia Martínez Programación de base de datos
Procedimiento:
Name Caption
fraColor Color
fraFuentes Fuentes
optCara Cara del botón
optRojo Rojo
optAmarillo Amarillo
optAzul Azul
chkNegrita Negrita
chkCursiva Cursiva
chkSubrayado Subrayado
chkTachado Tachado
lblMuestra Muestra
cmdSalir Salir
- Cabe mencionar que los Frames sirven como agrupadores para los
option y check button.
End If
End Sub
- Botón de tachado
Private Sub chkTachado_Click()
If chkTachado.Value = 1 Then
lblMuestra.FontStrikethru = True
Else
lblMuestra.FontStrikethru = False
End If
End Sub
5.- Ahora programamos el botón de Salir y ejecutamos la aplicación.
Ejercicio 5:
Realizar un proyecto que ejecute operaciones matemáticas simples,
nuestro formulario de trabajo contendrá 3 cajas de texto, dos para poder
insertar los operandos y una que recogerá el resultado de la operación.
También tendrá un frame que servirá de contenedor a los cuatros botones de
opciones que contendrán el texto, suma, resta, multiplicación y división, el
formulario tendrá el siguiente aspecto.
Objetivo
Conocer las propiedades de las cajas de lista, así como sus eventos más
importantes, con la finalidad de agregarlos a los proyectos de Visual Basic.
Procedimiento:
Name Caption
lblNuevo Nuevo Elemento
txtNuevo
lstLista
cmdAgregar &Agregar
cmdEliminar &Eliminar
txtNuevo.SetFocus
End Sub.
- El código para el botón de eliminar es el siguiente.
Private Sub cmdEliminar_Click()
On Error Resume Next
lstLista.RemoveItem lstLista.ListIndex
End Sub
4.- Por último ejecutamos nuestra aplicación y probamos su funcionamiento.
Ejercicio 6:
Ahora agregaremos algunos elementos más a nuestra reciente aplicación
tales como otra etiqueta, una caja de texto y un botón de comando con los
nombres siguientes:
name caption
lblTotal Total:
txtTotal
cmdBorrarLista &Borrar Lista
Objetivo
El alumno conocerá la importancia que tienen las cajas combinadas en
cualquier aplicación de Visual Basic.
Procedimiento
1.- Abrir un nuevo proyecto en Visual Basic.
2.-Inserte una etiqueta y debajo de la etiqueta una caja combinada tal y como
se muestra en la siguiente imagen:
Ejercicio 7:
Abra un nuevo proyecto y agregue dos caja combinada una que guarde
los estados de México y otra que guarde los días de la semana.
Procedimiento:
2.- Modifique el tamaño del formulario con los siguientes valores en las
propiedades Height=6915 y Width=9135.
7.-Haz doble clic sobre el control DriveListBox y dentro del evento Chance
escribe.
On Error Resume Next ‘en caso de que la lista este vacía o se llegue al final
File1.Selected(File1.ListIndex + 1) = True
End Sub
12.- Haz doble clic sobre cualquier parte del formulario y en el evento Load
escribe.
Private Sub Form_Load()
File1.Pattern = "*.bmp;*.jpg;*.gif"
Image1.Stretch = True
End Sub
13.- Ejecuta la aplicación y comprueba su funcionamiento.
Objetivo:
EL alumno aprenderá el uso de este importante control para agregarlo a
sus aplicaciones visuales.
Procedimiento:
1.- Abra un nuevo proyecto
2.- Modifique el tamaño del formulario con los siguientes valores en las
propiedades Height=6915 y Width=9135.
3.-Agregar un control Image, dos botones de control una caja de texto y dos
controles commandDialog. (Ver imagen).
CommonDialog2.ShowFont
'Asigna a la caja de texto el tipo de letra seleccionada en el cuadro de dialogo.
Text1.FontName = CommonDialog2.FontName
'Asigna a la caja de texto el tamaño de letra seleccionado en el cuadro de dialogo.
Text1.FontSize = CommonDialog2.FontSize
'Si el usuario seleccionada negrita se asigna a la caja.
Text1.FontBold = CommonDialog2.FontBold
'Si el usuario selecciona cursiva se asigna a la caja.
Text1.FontItalic = CommonDialog2.FontItalic
'Si el usuario selecciona subrayado se asigna a la caja.
Text1.FontUnderline = CommonDialog2.FontUnderline
'Si el usuario selecciona tachado se asigna a la caja.
Text1.FontStrikethru = CommonDialog2.FontStrikethru
'Asigna el color seleccionado al texto de la caja.
Text1.ForeColor = CommonDialog2.Color
End Sub
7.- Ahora damos doble clic sobre cualquier parte del formulario y escribimos en
el evento load este código:
Private Sub Form_Load()
Image1.Stretch = True
End Sub
8.- Ejecutamos la aplicación y probamos el funcionamiento.
Ejercicio 9.
Objetivo:
Procedimiento:
4.- Ahora debemos asignar el mismo nombre a cada caja de texto. Para esto
seleccione cada una de las cajas de texto y en su respectiva propiedad Name
escriba el texto caja.
End Sub
9.- Dentro del evento clic del botón borrar escribe:
Private Sub Command4_Click()
Dim i As Integer
For i = 1 To 6
Caja(i).Text = ""
Next i
End Sub
10.- Ejecuta la aplicación y verifica su funcionamiento.
Objetivo
En esta práctica el alumno aprenderá a utilizar y a declarar constantes en
sus tres ámbitos, públicos, privados y locales.
Procedimiento:
Ejercicio 11:
Agrega al formulario una copia del apartado convertir millas a kilómetros,
y en botón de convertir intenta utilizar la constante KILOMETRO declarada en la
Práctica original.
Objetivo:
Utilizara las variables y conocerá los diferentes tipos de datos que
soporta Visual Basic, así como su importancia y la aportación en cualquier
proyecto.
Procedimiento.
1.- Abra un nuevo proyecto.
2.- Inserte tres etiquetas, tres cajas de texto y dos botones de comando, tal y
como se muestra en la siguiente figura:
3.- Aplica los siguientes valores en las propiedades indicada de los controles
que se muestran en la siguiente tabla:
Control Propiedad Valor
AutoSize True
Label1
Caption Horas Trabajadas
AutoSize True
Label2
Caption Precio por hora:
AutoSize True
Label3
Caption Sueldo Bruto:
Name txtHorasTrabajada
Text1
Text1
Name txtPrecioHora
Text2 Locked true
Text
Name txtSueldoBruto
Text3
text
Name cmdCalcular
Command1
Caption &Calcular
Name cmdSalir
Command2
Caption &Salir
Form Caption Sueldo Bruto
4.- Dentro del evento KeyPress de las dos primeras cajas de texto escribe el
siguiente bloque de código para que solo admitan números:
‘Hace que la caja de texto solo acepte números.
If Not (KeyAscii >= 48 And KeyAscii <= 57 Or KeyAscii = 8) Then
KeyAscii = 0
End If
5.-Haz doble clic sobre el botón calcular y en evento Click escribe el siguiente
código.
Private Sub cmdCalcular_Click()
'Verificamos que las cajas no se dejen vacías.
If Len(Trim(txtHorasTrabajadas.Text)) = 0 Then
MsgBox ("Introduzca las horas trabajadas.")
txtHorasTrabajadas.SetFocus
ElseIf Len(Trim(txtPrecioHora.Text)) = 0 Then
MsgBox ("Introduzca el precio por hora.")
txtPrecioHora.SetFocus
Else
Dim horas_trabajadas As Integer ' Variable para almacenar las horas trabajadas.
Dim precio_horas As Currency 'Variable para almacenar el precio por horas.
Dim sueldo_bruto As Currency 'Variable para almacenar el sueldo bruto.
horas_trabajadas = CInt(txtHorasTrabajadas.Text) ' Almacena las horas escrita en la caja en
la
‘variable.
precio_horas = CCur(txtPrecioHora.Text) 'Almacena el precio por hora escrita en la caja en
la
‘variable.
sueldo_bruto = horas_trabajadas * precio_horas 'Calcula el sueldo bruto.
txtSueldoBruto.Text = FormatCurrency(CDbl(sueldo_bruto)) ' Escribe el sueldo bruto en la
caja.
End If
End Sub
6.- Ejecute la aplicación y verifique el resultado.
Ejercicio 12:
Ejercicio 12b
Objetivo:
En esta práctica el alumno aprenderá la forma rápida y sencilla de
almacenar en variables datos proporcionados por el usuario. Mediante un
cuadro personalizado generado por la función InputBox.
Procedimiento:
1.- Abre un nuevo proyecto e inserta un botón de comando.
2.- Dentro del evento clic del botón de comando inserta
Private Sub Command1_Click()
‘Se declaran las variables donde se almacenará el nombre y el apellido.
Dim nombre As String
Dim apellido As String
‘Permite que el usuario introduzca su nombre y lo almacena en la variable nombre.
nombre = InputBox("Introduzca su nombre:", "Datos personales")
‘Permite que el usuario introduzca su apellido y lo almacena en la variable apellido.
apellido = InputBox("Introduzca su apellido:", "Datos personales")
‘Muestra en una caja de mensaje el nombre completo.
MsgBox ("Su nombre completo es: " & nombre & " " & apellido)
End Sub
3.- Ejecute la aplicación y aparecerá el siguiente cuadro de dialogo:
Ejercicio 14
Objetivo:
El alumno aprenderá la importancia de la función MsgBox y su constante
uso e interacción con los programas Visual Basic.
Procedimiento:
1.- Abre un nuevo proyecto
2.- Agrega cuatro botones de comandos con los caption “Mensaje
1”,”Mensaje 2”, “Mensaje 3”, “Mensaje 4”
3.- El formulario debe lucir como la siguiente imgane.
Objetivo:
En este ejercicio el alumno apreciará la funcionalidad de la sentencia if y
el su uso en cualquier aplicación Visual Basic.
Procedimiento:
3.- Establezca los siguientes valores en las propiedades indicadas en cada uno
de los controles mostrados en la siguiente tabla:
Control Propiedad Valor
Caption Registro
Form
StartUpPosition 2-CenterScreen
AutoSize True
Label1
Caption CD-KEY
Font Ms Sans Serif,10,Negrita
Name txtCaja1
Text1 Appearance 0 - Flat
MaxLength 5
Text
Name txtCaja2
Appearance 0 - Flat
Text2
MaxLength 5
Text
Name txtCaja3
Appearance 0 - Flat
Text3
MaxLength 5
Text
Name txtCaja4
Appearance 0 - Flat
Text4
MaxLength 5
Text
Name txtCaja5
Appearance 0 - Flat
Text5
MaxLength 5
Text
Name cmdRegistrar
Command1
Caption &Registrar
Name cmdCandelar
Command2
Caption &Cancelar
5.- Dentro del evento clic del botón registrar escribe el siguiente bloque de
código:
Private Sub CmdRegitrar_Click()
Dim Clave As String
Clave = "1234512345123451234512345"
'Verifica que la contraseña es igual a la que contiene las cajas.
If txtCaja1.Text & txtCaja2.Text & txtCaja3.Text & txtCaja4.Text & txtCaja5.Text = Clave Then
MsgBox "Contraseña Correcta.", vbInformation, "Registro"
Unload Me ' Cierra esta ventana.
Else
MsgBox "Contraseña Incorrecta.", vbCritical, "Registro"
txtCaja1.SetFocus ' Hace que la primera caja reciba el enfoque.
End If
End Sub
6.- Dentro del evento Chance de la primera caja escribe:
Private Sub txtCaja1_Change()
If Len(txtCaja1.Text) = 5 Then
txtCaja2.SetFocus
End If
End Sub
7.- Repetimos el procedimiento para las demás cajas, verificamos que cada vez
que escriban los 5 números automáticamente se pase a la siguiente caja y al
llegar a la caja 5 el enfoque se le pasará al botón Registrar.
Ejercicio 15:
Calcular la utilidad que un trabajador recibe en el reparto anual de
utilidades si este se le asigna como un porcentaje de su salario mensual que
depende de su antigüedad en la empresa de acuerdo con la siguiente tabla:
Tiempo Utilidad
Menos de un año 5% del salario
1 año o más y menos de 2 años 7% del salario
2 años o más y menos de 5 años 10% del salario
5 años o más y menos de 5 años 15% del salario
10 años o más 20% del salario
Objetivo:
EL alumno comprenderá la importancia de los ciclos con la finalidad de
escribir menos bloques de código.
Procedimiento:
1.- Abrir un nuevo proyecto en Visual Basic
2.- Agregar 4 botones de comando con los caption For…Next, For…Step…Next,
Do…Loop y While…Wend.
3.- El aspecto del formulario será el siguiente
cadena = ""
i=1
While (i <= 10)
cadena = cadena & i & vbCrLf
i=i+1
Wend
MsgBox cadena, vbInformation, "Ciclo While...Wend"
End Sub
7.- Y por ultimo el botón Do…Loop llevará el código:
Private Sub Command3_Click()
Dim i As Integer
Dim cadena As String
cadena = ""
i=1
Do
cadena = cadena & i & vbCrLf
i=i+1
Loop While (i <= 10)
MsgBox cadena, vbInformation, "Ciclo Do Loop"
End Sub
8.- Ahora ejecuta la aplicación y analiza lo realizado.
Ejercicio 16:
Objetivo:
Utilizar la herramienta menús para agrupar todas las ventanas y
operaciones que realizará el proyecto.
Procedimiento:
1.- Abre un nuevo proyecto.
2.- Dar clic en el editor de menús
3.- Aparece la ventana de editor de menú
4.- En la caja de texto caption escribir Archivo y en el name mnuArchivo
5.- Dar clic en el boton Next
6.- Escribir en el caption Nuevo y en Name mnuNuevo
7.- Ahora dar clic al boton con flecha a la derecha de modoque aparecera
….Nuevo, eso significa que la opcion nuevo es un submenú de la opción Archivo
Prácticas de Visual Basic 6.0 37
Realizado por: Gerardo Francisco Galicia Martínez Programación de base de datos
Ejercicio 17
Ejecuta la aplicación block de nota y revisa cuales son las opciones del
menú archivo, una vez hecho reproduce el menú en una aplicación de Visual
Basic.
Objetivo:
En este ejercicio se conocerá una de las formas para añadir información
a una base de datos creada en un manejador.
Procedimiento:
1.- Abrimos el programa Access y creamos una base de datos llamada
Prueba.mdb
2.- Creamos una tabla llamada Datos con los campos idPersona, Nombre y
Dirección
3.- Guardamos la base de datos en una nueva carpeta la cual va a ser
compartida por el proyecto en visual Basic.
4.- Ahora abrimos un proyecto en Visual Basic
5.- agregamos algunos controles para que nuestra ventana luzca como la
siguiente imagen:
txtIdPersona.Text = ""
txtNombre.Text = ""
txtDireccion.Text = ""
txtIdPersona.SetFocus
End If
End With
End Sub
10.- Programa el botón de Cancelar para salir de la aplicación.
11.- Pon la propiedad visible del control ADO visible en False.
12.- Ahora ejecuta la aplicación y prueba su funcionamiento.
Ejercicio 18
En la práctica anterior valida las cajas de texto de modo que el campo
IdPersona solo acepte números, la caja Nombre solo acepte letras y además
que se pueda utilizar el enter, por otro lado modifica el código del botón
guardar de modo que no puedas almacenar datos si alguno de las cajas esta en
blanco.
Objetivo:
Conocerás un contenedor de datos como lo es el DataGrid para tener un
mejor control de los datos almacenados.
Procedimiento:
1.- Abrir el proyecto de la práctica 18.
2.- Agregar el control DataGrid desde la ventana componentes.
3.- agregar el componente al formulario, haciendo una modificación al
proyecto, la ventana debe lucir de esta manera:
Procedimiento:
1.- Abrimos el proyecto de la práctica 18
2.- Agregamos un formulario al proyecto
3.- Ahora vamos al formulario que acabamos de añadir y agregamos algunos
controles para que luzca como la imagen:
4.- Dar doble clic sobre el control DataGrid del formulario 1 y escribir en el
evento DblClick el siguiente código.
Private Sub DataGrid1_DblClick()
If DataGrid1.Columns(0) = "" Then
MsgBox "No existen datos que mostrar"
Exit Sub
End If
adoPersona.Recordset.Find "idPersona='" & DataGrid1.Columns(0) & "'"
With adoPersona.Recordset
If .BOF = False And .EOF = False Then
Form2.txtIdPersona.Text = DataGrid1.Columns(0)
Form2.txtNombre.Text = DataGrid1.Columns(1)
Form2.txtDireccion.Text = DataGrid1.Columns(2)
Form2.Show 1
End If
End With
End Sub
5.- Ahora vamos al formulario 2 y en el botón de actualizar escribimos el
siguiente código:
Prácticas de Visual Basic 6.0 41
Realizado por: Gerardo Francisco Galicia Martínez Programación de base de datos
Procedimiento:
1.- Abrir el proyecto que hemos venido utilizando desde la práctica 18.
2.- dar doble clic al DataGrid y en evento keydown escribir el siguiente código.
Private Sub DataGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyDelete Then
If MsgBox("¿Estas seguro de borrar el registro?", vbQuestion + vbYesNo, "Confirmación") = vbNo
Then
Exit Sub
End If
adoPersona.Recordset.Delete
End If
End Sub
3.- ejecuta la aplicación y seleccionar una fila del DataGrid presiona el botón de
suprimir y verifica que sucede.