GUIA de VISUAL BASIC 6

Anuncio
Colegio
Universitario
de Caracas
GUIA de VISUAL BASIC 6.0
E
L
E
C
T
I
V
A
I
Visual Basic 6.0
Profesor: Samir Florez
1
Guia de visual basic 6.0
Colegio
Universitario
Historia del lenguaje
Visual Basic es un lenguaje de programación, y como tal, sirve para crear programas o
aplicaciones. Un leguaje de programación está formado por un conjunto de sentencias
(entendibles por los humanos) que representan órdenes dadas a las computadoras.
Generalmente, cada sentencia equivale a muchas órdenes o instrucciones que debe llevar a
cabo la máquina.(mediante código Binario)
Visual Basic ha evolucionado (al igual que el resto de los lenguajes). Primero fue
GWBASIC, luego QuickBasic y finalmente Visual Basic.
Actualmente, Visual Basic combina la sencillez del Basic con el poder de un lenguaje de
programación visual que permite desarrollar robustas aplicaciones de 32 bits para
Windows. Visual Basic ya no es sólo un lenguaje para los más novatos, sino que es un
excelente alternativa para programadores de todos los niveles.
Hasta dónde se puede llegar con Visual Basic
Este poderoso lenguaje resulta ideal para crear aplicaciones de uso general, tal como:
Aplicaciones y utilitarios para Windows de cualquier índole.
Aplicaciones que manejen base de datos de pequeño y mediano tamaño (por
ejemplo, las basadas en el motor Jet de Microsoft, implementada en el conocido
Access).
Aplicaciones multimedia o publicaciones electrónicas en CD.
Juegos sencillos.
>
>
>
>
La programación en Visual Basic propone:
1. La primera tarea a realizar es diseñar los formularios (ventanas) con los que
va a interactuar el usuario.
2. Luego deben agregarse objetos y definir las propiedades de cada uno.
3. Finalmente, se deben establecer los eventos a los que va a responder el
programa y escribir el código correspondiente (por ejemplo, definir cómo va
a responder un botón cuando el usuario haga un doble clic).
Formularios
Los formularios son las ventanas mediante las cuales los usuarios interactúan con la
aplicación. Lo primero que hay que hacer al comenzar un nuevo proyecto es definir todas
las ventanas que formarán parte del programa, y luego establecer su apariencia y
comportamiento. Por lo general se trabaja con los formularios en tiempo de diseño, es
decir, ni bien se comienza a modelar el programa. En tiempo de ejecución, lo que se suele
hacer es ocultar o redefinir el tamaño de un formulario.
Cuando se abre un nuevo proyecto en Visual Basic, generalmente se presenta un formulario
estándar sobre el cual se empieza a trabajar.
Profesor: Samir Florez
2
Guia de visual basic 6.0
Colegio
Universitario
Al iniciar el Visual Basic aparecerá:
Luego hacer
doble clic en el ícono Standard.exe. Entonces aparecerá
Formulario en blanco que
es el punto de partida para
construir una interfase.
Profesor: Samir Florez
3
Guia de visual basic 6.0
Colegio
Universitario
El área de trabajo
4
5
1.
2.
3.
4.
Barra de títulos
Barra de menús
Barra de herramientas
Caja de herramientas
8
7
6
5. Diseñador de formularios
6. Explorador de proyectos
7. Ventana de propiedades
8. Posición de formulario
Controles
Los controles son todos los objetos que se colocan en los formularios, mediante los cuales se realizan
las acciones. A través de los controles se puede escribir y recibir texto (etiquetas y cajas de texto), usar
botones de comando, insertar o manipular imágenes, utilizar cuadros de diálogos, y mucho más. Visual
Basic incorpora diversos controles estándar, pero lo más llamativo es la posibilidad de crear controles
personalizados (aunque para esto hay que tener más conocimiento en la materia).
Profesor: Samir Florez
4
Guia de visual basic 6.0
Colegio
Universitario
Fijar los controles de un formulario
Una vez ubicados todos los controles que formarán parte del formulario, Visual Basic nos permite fijarlos
al mismo, de modo que no puedan moverse accidentalmente. Para ello, debemos ir al menú Fomat y
elegir la opción Lock Controls.
Seleccionar controles
Seleccionar un control es la base para luego poder moverlo, duplicarlo, modificarlo o eliminarlo. Para
seleccionar un solo control, simplemente debemos hacer un clic sobre el mismo en el formulario.
Pero también existe la posibilidad de seleccionar varios controles de una sola movida. Par eso, debemos
elegir el Puntero de la caja de herramientas y dibujar un rectángulo en el formulario ( de la mimas forma
que se dibuja cualquier otro control). Todos los objetos que se encuentren dentro del rectángulo dibuj
ado están seleccionados y listos para se manipulados.
Otra forma de seleccionar varios controles a la vez es hacer clic sobre unos de ellos y luego seleccionar el
resto manteniendo presionada la tecla ctrl.
Eliminar controles
Seleccionar un control y luego pulsar la tecla Supr o Delete.
Propiedades
Las propiedades son atributos que poseen los controles. Todas las propiedades tienen un nombre que las
identifica y un valor que determina el estado del objeto. El valor de una propiedad se puede establecer en
tiempo de diseño o en tiempo de ejecución.
Para establecer o cambiar el valor de una propiedad en tiempo de diseño, se debe seleccionar el
objeto y acceder a la ventana de propiedades (ver figura). Allí simplemente debemos elegir el nombre de la
propiedad a modificar (columna izquierda de la venta de propiedades) e ingresar el nuevo valor de la
misma (columna derecha).
En tiempo de
ejecución, los
valores de las
propiedades se
pueden asignar o
modificar
mediante el
ingreso de código.
Columna de
propiedades
Columnas de valores
De las propiedades
Profesor: Samir Florez
5
Guia de visual basic 6.0
Colegio
Universitario
Trabajar con formularios
Cargar y mostrar formularios
Cuando se escribe un programa que posee un solo formulario, no hay que preocuparse por
mostrarlo u ocultarlo ya que Visual Basic por defecto lo presentará en pantalla al ejecutar el
proyecto. Pero la mayoría de los programas tienen varias ventana, lo cual hace necesario que
debamos controlar cuáles se muestran y cuáles no.
Para mostrar un formulario, existe un método llamado Show. Su sintaxis es la siguiente:
Formulario. Show estilo, padre
Parámetro Descripción
Formulario Opcional. Nombre del formulario a mostrar. Si se omite, se muestra el formulario
Estilo
activo.
Opcional. Número entero que determina si el formulario se mostrará de forma modal ( 1)
o
Padre
n
r
m si nuestra
a
l
(
0
Opcional.
Seoutiliza para
indicar
ventana
está contenida
dentro
de )otro
formulario (relación padre –hijo). Generalmente no se utiliza este parámetro, aunque es
muy útil para crear barras de herramientas.
Por ejemplo: FrmPrograma.
Show
Esta instrucción carga el formulario frmPrograma en memoria, e inmediatamente después lo
muestra en pantalla.
FrmProgram. Show 1 (Aquí, también se muestra la ventana frmProgram, pero esta vez en forma
modal).
Si un formulario se muestra modalmente, el control del programa permanece en ese formulario
hasta que éste se cierre. Si una ventana se muestra normal, los usuarios se pueden mover
libremente por todos los formularios activos (sin necesidad de cerrarlos obligatoriamente).
Formulario Modal
Es ideal para usar cuando queremos que los usuarios completen las acciones del formulario antes de ir a
otra parte del programa.
El método Show realiza dos acciones:
Cargar el formulario en memoria (si aún no estaba cargado) Mostrar
el formulario en pantalla.
>
>
Sin embargo muchas veces es necesario cargar un formulario en memoria sin mostrarlo, para dicha
función se usará la instrucción Load, que cargar en memoria formularios y otros controles. Por ejemplo:
Load frmPrograma
Esta línea de código carga en memoria el formulario frmPrograma, pero no lo muestra. Después de
realizada la carga, se ejecuta el evento From_Load de frmPrograma (con lo cual se ejecuta el
código disponible en dicho procedimiento de suceso).
Profesor: Samir Florez
6
Guia de visual basic 6.0
Colegio
Universitario
Sugerencia: Los formularios que poseen muchos
controles tardan en aparecer,
por lo que a veces es conveniente cargar todos los formularios en memoria de una sola vez al inicio del
programa para luego mostrarlos más rápidos en el momento deseado.
Hide
Quita el formulario de la pantalla pero no de la memoria, por lo tanto se lo debe usar cuando se
quiere ocultar temporalmente una ventana con la que se seguirá trabajando luego. Ejemplo: Objeto.hide
Unload
Esta instrucción permite descargar de memoria un formulario (con lo cual también se lo oculta de la
pantalla).
Ejemplo: Unload objeto
Ejercicio Nro. 1
Diseñar los formularios como se muestran a continuación:
Profesor: Samir Florez
7
Guia de visual basic 6.0
Colegio
Universitario
Caja de Texto o
Textbox
Etiqueta o
Label
Las etiquetas o label para visualizar datos que pueden ser provenientes de las cajas de textos, insertar
comentarios dentro del formulario o bien para que Visual Basic muestre resultados por pantalla de
operaciones o de acciones intermedias.
Ejercicio 1
Dim saludo As String * 10
Private Sub Command 1_Click() Dim Nombre As
String * 10 Nombre = "Joaquim"
saludo = "HOLA"
Print saludo; y; Nombre
End Sub
Private Sub Command2_Click() saludo =
"ADIOS"
Print saludo
End Sub
Profesor: Samir Florez
8
Guia de visual basic 6.0
Colegio
Universitario
Ejercicio Nro. 2
Realizar un programa con el diseño que se encuentra a continuación. Este programa
las el precio unitario y las unidades compradas de un determinado producto y ingresará luego se
calculará el total a pagar.
Antes de ejecutar el programa es importante verificar el orden de los controles que se encuentran
dentro.
Para los controles de un formulario, el orden de tabulación se asigna según el orden en que se
agregan los controles. Cada nuevo control se coloca el último en el orden de tabulación. Si lo
ejecutáramos sin tener en cuenta el orden, probablemente el puntero del Mouse se ubicaría en el
botón Calcular y en realidad debe estar en la caja de texto del Precio Unitario. Para solucionar esto,
deberíamos ordenar la propiedad TabIndex de cada control del formulario. Ejemplo:
TabIndex
Precio
0
Unidades Botón Calcular Botón Nuevo
1
2
3
Podemos mejorar aún más nuestro programa, agregando a algunos controles el código que permita
pasar el Mouse de un control a otro con la tecla Enter. Para ello, habrá que agregar: En el control
Precio y Unidades, el siguiente código, que es el mismo explicado en el ejercicio que hicimos
anteriormente para sumar dos números.
Caja de texto Precio:
Private Sub Precio_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then Unidades.
SetFocus End If
End Sub
Caja de texto Unidades:
Private Sub Unidades_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then Calcular.
Profesor: Samir Florez
9
Guia de visual basic 6.0
Colegio
Universitario
SetFocus End If
End Sub
Botón de comando Nuevo:
Private Sub Blanco_Click()
Precio = " "
Unidades = " "
Total = " " Precio.
SetFocus
End Sub
Botón de comando Calcular: Private
Sub Calcular_Click() Total = Precio *
Unidades Blanco. SetFocus
End Sub
Botón de comando Salir:
Private Sub Command 1_Click() End
End Sub
Propiedad Visible
Diseñamos el siguiente formulario:
Los TextBox poseen el nombre: n1 y n2 (donde ingresaremos los valores numéricos). Los Label poseen
el nombre: s y r.
Profesor: Samir Florez
10
Guia de visual basic 6.0
Colegio
Universitario
1) Al ejecutar el formulario deben desaparecer los
siguientes objeto:
1. El label llamado s, el recuadro (Shape1, este se diseña con la opción del Cuadro de Herramientas,
donde se encuentra: el textbox, el label, etc. ), el botón nuevo y el label r.
2. Para resolver eso debemos ingresar el siguiente código en la sección carga de formulario, hacemos
entonces doble clic sobre cualquier parte gris o fondo del formulario donde indica la flecha 1.
Ingresamos entonces:
Private Sub Form _Load()
s.Visible = False
r.Visible = False
nuevo.Visible = False
Line 1 .Visible = False
End Sub
Con esto estamos indicando que la
propiedad Visible de cada objeto
quedará en False o sea dichos objetos:
s, r, nuevo y line1 quedarán ocultos.
1)Después de ingresar los números que deseemos sumar pulsaremos el botón Aceptar, y debe
aparecer el resultado en el label que llamamos r, pero debemos ocultar los objetos n1, n2, y el
botón Aceptar.
) Debemos entonces ingresar el siguiente código dentro del botón Aceptar, hacemos entonces doble
clic en el mismo e ingresamos:
Private Sub Aceptar_Click()
s.Visible = True r.Visible =
True nuevo.Visible = True
Shape 1 .Visible = True
Se ponene en True los objetos: s, r, nuevo y Shape1.
n1.Visible = False
Y se codifican en False n1, n2 y el botón Aceptar.
n2.Visible = False
Después se realiza la suma, y se la asigna al label r.
Aceptar.Visible = False
Luego al label s se le asigna el texto: “ La suma es:”.
r = Val(n1) + Val(n2)
s = "La suma es:"
End Sub
4) Programaremos el botón Nuevo, en el mismo se debe ingresar el siguiente código:
s.Visible = False
r.Visible = False
nuevo.Visible = False
Shape 1 .Visible = False
n1.Visible = True
n2.Visible = True
Aceptar.Visible = True
n1 = ""
n2 = ""
Se ocultan nuevamente los objetos s, r, nuevo, shape1.
Se configuran en visible los objetos n1, n2 y el
botón Aceptar.
Se limpian los contenidos de n1 y n2.
5) Programaremos el botón Salir, en el mismo ingresamos el siguientes código:
Private Sub salir_Click()
x = MsgBox("¿ Esta seguro que desea salir del programa ?", vbOKCancel, "Mensaje") If x = 1
Profesor: Samir Florez
11
Guia de visual basic 6.0
Colegio
Universitario
Then
End
End If
n1 .Setfocus
End Sub
En un variable cualquier, aquí la llamamos x,
mandaremos la respuesta del Msgbox.
O sea, que la x tendrá el valor de 1 o 2, 1 en el caso
que hayamos aceptado la opción y 2 en el caso de
elegir el botón Cancelar del mensaje msgbox.
Luego mediante el comando IF ejecutará la sentencia End, si x = 1,
digamos que si luego que aparezca el mensaje elegimos el botón
Aceptar, a la variable x se le asignará el número 1, por lo que se
ejecutará la sentencia (End) que aparece después de Then. En caso
contrario que pulsemos el botón Cancelar del mensaje, no saldrá del
programa.
Al no salir del programa el cursor quedará
ubicado en el Textbox n1 (n1.setfocus).
Ejercicio 3
Profesor: Samir Florez
12
Guia de visual basic 6.0
Colegio
Universitario
Private Sub Command 1_Click() Dim result,
resulta As Double result = Val(Text1 .Text) *
(60) Text2.Text = Str(result)
resulta = Val(Text2.Text) * (60) Text3.Text =
Str(resulta)
End Sub
Private Sub Command2_Click() End
End Sub
Ejercicio 4
Private Sub Azul_Click()
Texto.ForeColor = &HFF0000 End Sub
Private Sub Command 1_Click() End
End Sub
Private Sub Cursiva_Click() Texto.FontItalic
= True
Texto.FontBold = False End Sub
Private Sub Form _Load() Normal.Value
= True Azul.Value = True
Texto.FontBold = False Texto.FontItalic =
False Texto.ForeColor = &HFF0000
End Sub
Profesor: Samir Florez
13
Guia de visual basic 6.0
Colegio
Universitario
Ejercicio 5
Private Sub Ape_GotFocus() Ape.SelStart = 0
Ape.SelLength = Len(Ape.Text) End Sub
Private Sub Boton_añadir_Click()
totalregistros = totalregistros + 1
If totalregistros > 50 Then
MsgBox "losta completa", 16, "error" Else
agenda(totalregistros).Nombre = Nom.Text
agenda(totalregistros).apellidos = Ape.Text
agenda(totalregistros).telefono = Tel.Text
agenda(totalregistros).Edad = Val(Edad. Text) Lista_1 .AddItem
Nom.Text
Lista_2.AddItem Nom.Text
End If
Nom. SetFocus
End Sub
Private Sub Boton_eliminar_Click(Index As Integer) Dim I, B As
Integer
For I = 1 To totalregistros
If (RTrim$(Lista_1 .Text) = RTrim$(agenda(I).Nombre)) Then
Exit For
End If
Next I
Nom. Text = agenda(I).Nombre
Ape.Text = agenda(I).apellidos
Tel.Text = agenda(I).telefono
Edad. Text = Str(agenda(I).Edad)
B = MsgBox("Eliminar Registro:" + Nom.Text, 3 + 32, "Eliminar")
If B = 6 Then
Lista_1 .RemoveItem I - 1
totalregistros = totalregistros - 1
For j = I To totalregistros
Profesor: Samir Florez
14
Guia de visual basic 6.0
Colegio
Universitario
agenda(j).Nombre = agenda(j + 1).Nombre
agenda(j).apellidos = agenda(j + 1).apellidos
agenda(j).telefono = agenda(j + 1).telefono agenda(j).Edad =
agenda(j + 1).Edad
Next j
Nom. Text = ""
Ape.Text = ""
Tel.Text = ""
Edad.Text = ""
End If
End Sub
Private Sub Boton_fin_Click(Index As Integer) End
End Sub
Private Sub Eda_GotFocus() Eda.SelStart = 0
Eda.SelLength = Len(Eda.Text) End Sub
Private Sub Form _Load() totalregistros =
0
End Sub
Private Sub Lista_2_Change() Dim n As
Integer
n = Lista _2.ListIndex + 1
Nom. Text = agenda(n).Nombre Ape.Text =
agenda(n).apellidos Tel.Text =
agenda(n).telefono Eda. Text =
agenda(n).Edad End Sub
Private Sub Nom_GotFocus() Nom.SelStart =
0
Nom.SelLength = Len(Nom.Text) End Sub
Private Sub Tel _GotFocus() Tel. SelStart = 0
Tel. SelLength = Len(Nom.Text) End Sub
Crear un módulo
Type registro
Nombre As String * 15 apellidos As
String * 25 telefono As String * 15 Edad
As String * 3
End Type
Global agenda(1 To 50) As registro
Global totalregistros As Integer
Realicen estas prácticas recuerden que en las practicas es que se aprende……..
Profesor: Samir Florez
15
Descargar