entrenamiento visualbasic 6 - johngonzalezrojas's · pdf fileentrenamiento en visual...

45
ENTRENAMIENTO EN VISUAL BASIC 6.0 POR: Ismael Castañeda Fuentes IMPLEMENTADO POR : Francisco Javier Parra Gómez Diseño de Bases de Datos Departamento de Ingeniería de Sistemas e Industrial Universidad Nacional de Colombia Bogotá, Agosto de 2003

Upload: duonghuong

Post on 04-Feb-2018

232 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

ENTRENAMIENTO EN VISUAL BASIC 6.0

POR:

Ismael Castañeda Fuentes

IMPLEMENTADO POR: Francisco Javier Parra Gómez

Diseño de Bases de Datos

Departamento de Ingeniería de Sistemas e Industrial

Universidad Nacional de Colombia

Bogotá, Agosto de 2003

Page 2: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 2

ENTRENAMIENTO EN VISUAL BASIC 6.0

Visual Basic 6 es una herramienta que se puede utilizar para la creación de aplicaciones Windows.

“Visual”, de Visual Basic, se refiere al método usado para la creación de la interfaz gráfica de

usuario (graphical user interface GUI); no se tienen que escribir numerosas líneas de código para

ubicar los controles en la pantalla, basta con colocarlos en el lugar deseado tal como si se

estuvieran dibujando. “Basic”, hace referencia al lenguaje BASIC (Beginners All-Purpose Symbolic

Instruction Code).

Visual Basic ha evolucionado del original BASIC y ahora contiene cientos de propiedades,

funciones y palabras claves relacionadas directamente con Windows GUI.

Los programadores principiantes pueden crear aplicaciones poderosas escribiendo pocas líneas de

código, y los programadores expertos pueden utilizar todas las ventajas que posee la herramienta.

Visual Basic Scripting Edition (VBScript), es también un lenguaje Visual Basic.

COMPONENTES DE UNA APLICACIÓN VISUAL BASIC

• Objetos.

Un objeto es una forma de comunicación con el usuario, por ejemplo una ventana o un menú.

Nombres de objetos Visual Basic:

F Data environment

F Form

F Menu

F Global functions

F Structures

F User objects

F Libraries

F Projects

Page 3: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 3

• Eventos.

Un evento puede ocurrir cuando un usuario ejecuta una acción con el ratón, el teclado, por una

orden del lenguaje de programación de Visual Basic o por el mismo sistema.

Algunos de los eventos más comunes son:

F Clic (click)

F Doble clic (DblClick)

F Cambio (Change)

F Cargar (Load)

F Descargar (Unload)

F Tomar el foco (GetFocus)

F Perder el foco (LostFocus)

• Scripts.

Un script es un conjunto de órdenes escritas en lenguaje Visual Basic que se deben ejecutar al

ocurrir un evento.

COMPONENTES DE UNA VENTANA.

• Controles.

Un control es un objeto colocado en una ventana.

Los controles son:

F CheckBox

F CommandButton

F PictureListBox

F EditMask

F Graph

F Frame

F HscrollBar

F Line

F ListBox

F ListView

F TextBox

F Timer

F OLEcontrol

F Shape

F Picture

F OptionButton

F RichTextBox

F Label

F ComboBox

F Tab

Page 4: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 4

• Focus.

Identifica el lugar de la pantalla donde va a suceder la siguiente acción. Para establecer el foco

en un sitio deseado, el usuario puede:

F Mover con el ratón el apuntador a un control y hacer clic.

F Presionar la tecla del tabulador hasta el control deseado.

Un control puede perder el foco cuando el usuario:

F Hace clic en otro control.

F Hace clic en otra ventana donde no hay controles.

F Presiona la tecla del tabulador y pasa a otro control.

• Atributos.

Los objetos y controles tienen atributos que definen su:

F Apariencia y

F Comportamiento.

LENGUAJE Visual Basic

Es un lenguaje de alto nivel basado en objetos con el cual se pueden construir scripts. Este

lenguaje tiene:

• Comandos para ejecución y comandos para control del flujo, por ejemplo IF ... THEN.

• Funciones predefinidas para manipular objetos, números, textos, para procesar fechas, datos

de tiempo, imprimir reportes, ejecutar DDE (Dynamic Data Exchange), manejar archivos; por

ejemplo SHOW, MOVE, EXECUTE, LOAD, HIDE.

• Las funciones regresan un valor que puede ser utilizado o ignorado. Se especifica, igualando el

nombre de la función al valor que se desea devolver, ejemplo: nombre_funcion =

Valor_a_devolver.

• Variables:

F Locales en un script.

F A nivel de una ventana/objeto.

F Globales.

Page 5: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 5

Convenciones aconsejadas por Visual Basic para dar nombres a los objetos:

Objeto Prefijo Ejemplo

CheckBox chk chkCasillaDeVerificacion

CommandButton cmd cmdBotonDeComando

ListBox lst lstLista

EditMask em emFormatoParaDatos

Graph gra graGrafico

Frame fra fraMarco

Hscrollbar hsb hsbBarraDeDesplazamientoHorizontal

Vscrollbar vsb vsbBarraDeDesplazamientoVertical

Line lin linLinea

Listview lsv lsvVistaDeDatos

Menu mnu mnuMenu

Textbox txt txtCuadroDeTexto

Olecontrol ole oleControl

Picture pic picCuadroDeImagen

OptionButton opt optBotonDeOpcion

Label lbl lblRotulo

Tab tab tabPestañas

Treeview tvw tvwVistaEnArbol

Form frm frmFormulario

Cuando se crea un control, Visual Basic sugiere un nombre automáticamente para el objeto, este

nombre está formado por el nombre del control y un número; se sugiere cambiarlo por el prefijo del

control y un nombre significativo para el usuario, este último nombre se aconseja empezarlo

utilizando una letra en mayúsculas, por ejemplo: frmMiFormulario.

Page 6: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 6

EJERCICIO PRÁCTICO

Los estudiantes deben hacer el ejercicio en forma individual y presentarlo funcionando

perfectamente, desde ejecutable y desde Visual Basic. En grupo deben presentar un informe,

indicando sus comentarios sobre este documento, errores encontrados, sugerencias para mejorarlo

y utilidad al realizar el ejercicio.

Elaborar una Aplicación sencilla, que permita manipular información del personal de una empresa

así: a) Listar todos los empleados, b) Buscar los empleados que concuerden con el nombre y/o el

primer apellido digitado por el usuario, c) Buscar los empleados de un determinado Departamento.

Una vez obtenida la lista, al hacer la selección de un empleado ver sus datos detallados. La

aplicación también debe estar en capacidad de ejecutar las acciones de impresión, adición,

modificación y borrado de datos de empleados. Como un servicio adicional de la Aplicación, se

debe proporcionar una Calculadora que esté en capacidad de ejecutar las cuatro operaciones

aritméticas básicas: suma, resta, multiplicación y división de dos valores dados por el usuario.

Estructura de la aplicación:

Los pasos indicados a continuación corresponden a un procedimiento que se puede seguir

utilizando Visual Basic 6.0 y Sistema Operativo Windows (Windows 95, 98, NT, ME, XP, 2000 y

2003. En este caso se usó Windows XP y Visual Basic en Inglés):

1. Entrar a Windows.

2. Escoger un directorio exclusivo para dejar todos los archivos del ejercicio (recomendado),

por ejemplo C:\Entrenamiento.

3. Copiar en este directorio:

• Los iconos proporcionados con el ejercicio.

Ventana para búsqueda

Ventana para Ventana para búsquedabúsqueda

Ventana para mantenimientoVentana para Ventana para

mantenimientomantenimiento CalculadoraCalculadoraCalculadora

Ventana principal Ventana Ventana principal principal

Ventana para búsqueda

Ventana para Ventana para búsquedabúsqueda

Ventana para mantenimientoVentana para Ventana para

mantenimientomantenimiento CalculadoraCalculadoraCalculadora

Ventana principal Ventana Ventana principal principal

Page 7: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 7

4. Activar Visual Basic.

5. Crear una nueva aplicación:

5.1. Crear una nueva aplicación:

• En el menu File � New Project � Standard EXE � Ok

5.2. Visual Basic crea dos objetos un proyecto llamado Project1.vbp y un formulario llamado

form1.frm estos objetos se visualizan en la ventana explorador de proyectos. A ella se

accede a través del menú View � Project explorer.

Page 8: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 8

5.3. Seleccionar en el explorador de proyectos Project1 y en la ventana propiedades cambiar la

propiedad Name por Entrenamiento.

5.4. Seleccionar Form1 en el explorador de proyectos, cambiar la propiedad Name por

frmPorDepto, la propiedad Caption por “Pantalla para búsqueda”, modificar la propiedad

Icon y elegir la imagen “Lupa 16 x16” (que se sugiere debe estar en una carpeta de iconos).

5.5. En el menú File � Save Project elegir el directorio creado para la aplicación y guardar el

proyecto con los nombres mostrados por defecto (frmPorDpto para el formulario y

Entrenamiento para el proyecto).

6. Elaborar una ventana como la siguiente:

Page 9: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 9

6.1. Añadir los controles mostrados en la figura:

• Dos TexBox, uno para Nombre y Primer apellido. Modificar la propiedad Name de los

TexBox por txtNombre y txtPrimerApellido, respectivamente. Colocar la propiedad text de

los dos controles en “” (vacío).

• Un Frame, para agrupar los botones de radio. Dejar la propiedad Name en fraBuscar.

• Tres OptionButton. Dejar la propiedad Name: en optTodos, optPorNombre,

optPorDepartamento y la propiedad Caption en: “Todos”, “Por nombre” y “Por

departamento”, respectivamente; para optTodos dejar la propiedad Value en True.

• Tres Label. Dejar la propiedad Name en lblNombre, lblPrimerApellido, lblDepartamento y

la propiedad caption en “Nombre”, “Primer apellido” y “Departamento” respectivamente.

• Dos commandButton. Dejar la propiedad Name en cmdBuscar y cmdCancelar; y la

propiedad caption en “Buscar” y “Cancelar”.

• Un commandButton. Dejar la propiedad Name en cmdImprimir, la propiedad caption en

“”, la propiedad picture con la imagen impresora.ico y la propiedad Style en 1-Grafical

• Un ComboBox. Dejar la propiedad Name en cmbDepartamentos, en la propiedad List

escribir lo siguiente:

Contabilidad

Personal

Ventas

Mercadeo

Desarrollo

Recursos

Administración

Sistemas

Para pasar al siguiente ítem utilizar CTRL+Enter.

Modificar la propiedad Style y dejarla en “2 – DropDown list”

• Hacer clic derecho sobre la barra de controles, ubicada al lado izquierdo, y elegir la opción

“Components…”, de la lista elegir Microsoft DataGrid control 6.0, esto permitirá de ahora en

adelante utilizar el DataGrid control (icono similar a: ); añadir un Datagrid, cambiar la

propiedad Name por dgEmpleados. Mas adelante se escriben las propiedades que

permiten establecer una conexión con la tabla.

Page 10: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 10

6.2. Dar las demás características deseadas, tanto a la ventana como a los controles.

6.3. Grabar el trabajo adelantado.

6.4. Ver cómo va quedando el diseño y si es necesario, hacer las modificaciones que se estimen

convenientes.

7. Elaborar una ventana como la siguiente:

El objetivo es tener una calculadora en la cual se va a obtener un resultado aritmético dados

dos operandos.

7.1. En la ventana explorador de proyectos hacer clic derecho sobre el área en blanco y elegir del

menú Add � Form � Form o en el menú Project � Add form.

Page 11: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 11

Dejar la propiedad Icon en calculadora.ico, la propiedad Name en frmCalculadora, la

propiedad Caption en “Calculadora”, la propiedad Maxbutton en false y Minbutton en false.

7.2. Insertar los siguientes controles, con las siguientes propiedades:

• Dos label. Dejar la propiedad Caption en “Primer operando” y “Segundo operando”.

• Dos TextBox. Dejar la propiedad Caption en txtPrimer y txtSegundo, y la propiedad text

en “” (Vacío.)

• Un Label para el resultado llamado lblResultado. Dejar la propiedad caption en “”,

Apperance en 0-Flat, Borderstyle en 1-Fixed single.

• Un Frame para los botones. Dejar la propiedad Caption en “”.

• Cuatro commandButton, uno para cada operación, llamados cmdSuma, cmdresta,

cmdMultiplicacion y cmdDivision.

7.3. Grabar el trabajo adelantado.

7.4. Ver cómo va quedando el diseño y (si es necesario) hacer las modificaciones que estime

convenientes.

8. Colocar el punto de entrada del aplicativo (inicio de ejecución). Inicialmente direccionar directamente a

la Calculadora.

• En el menú Project � Entrenamiento properties… en la opción Startup Object:

seleccionar frmCalculadora.

9. Probar que la aplicación se puede ejecutar:

• En barra de herramientas Run

• En menú: Start

• F5

10. Escribir las demás acciones que se desean tener al utilizar la calculadora.

Se sugiere que la calculadora efectúe por lo menos las operaciones aritméticas básicas

(suma, resta, multiplicación y división) y permita algunas facilidades de manejo de memoria.

10.1. Seleccionar la ventana de la calculadora.

10.2. Elaborar un programa, asociado con el evento change (cambiar), del control que recibe el

primer operando (para elegir el evento hacer doble clic sobre le control, luego en la ventana

de código en la parte superior elegir el evento asociado al control), similar al siguiente:

10.3. Para el control que recibe el segundo operando, escribir un programa similar al que recibe el

primer operando.

Private Sub txtPrimer_Change() If Not IsNumeric(txtPrimer.Text) And txtPrimer.Text <> "" Then

MsgBox " Se debe dar un número", vbOKOnly + vbInformation txtPrimer.Text = "" txtPrimer.SetFocus End If End Sub

Page 12: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 12

10.4. Elaborar un programa, asociado con el evento click(), del botón que va a ejecutar la

operación de suma, similar al siguiente:

10.5. Elaborar programas similares para las operaciones de resta, multiplicación y división.

10.6. Dejar el campo de resultado en blanco, cuando se pase el cursor al campo que recibe el

primer o segundo operando (programar el evento getfocus: txtPrimer.text = “”).

10.7. Probar la aplicación.

11. Seleccionar la ventana donde se pueden hacer búsquedas.

11.1. Seleccionar el control “Todos” (OptionButton) y elaborar un programa para que cuando este

control sea el seleccionado, desactive los controles que piden datos. Puede ser un programa

como el siguiente:

11.2. Correr la ventana para probar su funcionamiento.

11.3. Seleccionar el control “Por Nombre” (OptionButton). Escribir un programa para que active los

campos que piden los datos de nombre. Puede ser un programa como el siguiente:

11.4. En el evento load del formulario escribir el siguiente código:

Dim Oper1 As Double Dim Oper2 As Double Dim Oper3 As Double Oper1 = CDbl(txtPrimer.Text) Oper2 = CDbl(txtPrimer.Text) Oper3 = Oper1 + Oper2 lblResultado.Caption = CStr(Oper3)

Private Sub txtPrimer_GotFocus() lblResultado.Caption = "" End Sub

Private Sub optTodos_GotFocus() txtNombre.Visible = False txtPrimerApellido.Visible = False lblPrimerApellido.Visible = False lblNombre.Visible = False lblDepartamento.Visible = False cmbDepartamentos.Visible = False End Sub

Private Sub optPorNombre_GotFocus() txtNombre.Visible = True txtPrimerApellido.Visible = True lblPrimerApellido.Visible = True lblNombre.Visible = True lblDepartamento.Visible = False cmbDepartamentos.Visible = False End Sub

Private Sub Form_Load() optTodos_GotFocus End Sub

Page 13: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 13

11.5. Correr la ventana para probar su funcionamiento.

11.6. Seleccionar el control “Por Departamento” (OptionButton). Escribir un programa para que

active el control que pide el dato de Departamento. Puede ser un script como el siguiente:

11.7. Correr la ventana para probar su funcionamiento.

12. Crear una función que sirva para ejecutar las cuatro operaciones básicas aritméticas: sumar,

restar, multiplicar y dividir.

12.1. Dar Doble clic en frmCalculadora.

12.2. Dar clic en el icono , del explorador de proyectos, para observar el código del formulario.

12.3. En el menú, seleccionar Tools � Add Procedure.

• En el nombre escribir Operaciones, en Type elegir Function y elegir private.

• En la sección de declaraciones generales copiar el siguiente código (la sección de

declaraciones generales es aquella ubicada por fuera de cualquiera de los

procedimientos), este código nos permite usar argumentos con nombre.

12.4. Escribir dentro de los paréntesis los parámetros

Private Sub optPorDepartamento_GotFocus() txtNombre.Visible = False txtPrimerApellido.Visible = False lblPrimerApellido.Visible = False lblNombre.Visible = False lblDepartamento.Visible = True cmbDepartamentos.Visible = True End Sub

Enum Operacion Suma = 1 Resta = 2 Multiplicacion = 3 Division = 4 End Enum

Page 14: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 14

13. Escribir las instrucciones que van a conformar la función. Puede ser un programa como el

siguiente:

14. Cambiar los programas asociados con los botones de operaciones de la ventana de la

calculadora para que utilicen la función anterior.

14.1. Para el botón Resta (-) se puede hacer un programa como el siguiente (para el evento clic):

14.2. Proceder de manera similar para la suma, multiplicación y división.

14.3. Probar su funcionamiento.

Private Function Operaciones(Primer As String, Segundo As String, Operacion As Operacion) 'Nombre de la función: Operaciones 'Objetivo: Hacer un cálculo aritmético 'Parámetro 1: Primer operando 'Parámetro 2: Segundo operando 'Parámetro 3: Operación a realizar así: '1 Sumar '2 Restar '3 Multiplicar '4 Dividir Dim Oper1 As Double, Oper2 As Double, Oper3 As Double If Primer = "" Or Segundo = "" Then MsgBox "Los operandos deben ser aritméticos", vbInformation + vbOKOnly Exit Function End If Oper1 = CDbl(Primer) Oper2 = CDbl(Segundo) Select Case Operacion Case 1 Oper3 = Oper1 + Oper2 Case 2 Oper3 = Oper1 - Oper2 Case 3 Oper3 = Oper1 * Oper2 Case 4 If Oper2 = 0 Then MsgBox "Division por cero", vbCritical + vbOKOnly Exit Function Else Oper3 = Oper1 / Oper2 End If Case Else MsgBox "Operación no valida", vbInformation + vbOKOnly End Select Operaciones = Oper3 End Function

lblResultado.Caption = Operaciones(txtPrimer.Text, txtSegundo.Text, Resta)

Page 15: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 15

14.4. Comprobar el funcionamiento de la Calculadora para valores con punto decimal. En caso de

que no funcione, hacer las modificaciones necesarias.

15. Crear una base de datos que implemente lo mostrado en la figura

En este caso particular se usó Microsoft Access, pero puede ser cualquier otra base de

datos, o se puede utilizar una herramienta de diseño y que genere la Base de Datos.

Elaborar una base de datos con los campos, relaciones y tablas exhibidas en la figura

anterior. El nombre de la base de datos debe ser entrenamiento.

16. Crear el origen de datos ODBC.

16.1. En el menú inicio � Panel de control � Herramientas administrativas � Orígenes de datos

(ODBC).

16.2. Seleccionar la pestaña DSN de usuario y dar clic en agregar.

Page 16: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 16

16.3. Seleccionar Microsoft Access Driver (.mdb), y dar clic en finalizar.

16.4. Escribir en el nombre del origen de datos Entrenamiento; presionar el botón seleccionar y

buscar la ubicación de la base de datos “Entrenamiento.mdb”. Dar clic en aceptar para crear

el origen de datos; dar clic en Aceptar para cerrar la ventana de orígenes de datos.

17. Crear el Data Environment (Entorno de datos).

El entorno de datos es un objeto de la versión 6 de Visual Basic, el cual permite manipular de

forma sencilla las bases de datos, da facilidades para la creación de tablas, campos e

informes.

Page 17: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 17

17.1. Dar clic derecho en una zona en blanco del explorador de proyectos; en el menú dar clic en

Add � More ActiveX Designers � Data environment.

17.2. Debe aparecer una ventana como la siguiente:

17.3. Dar clic sobre el icono y cambiar la propiedad Name del entorno de datos a deDatos.

17.4. Dar clic en el icono y cambiar la propiedad Name por Entrenamiento.

18. Establecer el origen de datos de entorno de datos.

18.1. Dar clic derecho sobre Entrenamiento, y luego en Properties…

19. Elegir Microsoft OLE DB provider for ODBC Drivers. Dar clic en Siguiente>>

Page 18: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 18

19.1. Elegir el nombre del origen de datos llamado entrenamiento, y luego dar clic en el botón

aceptar.

20. Crear un comando para el manejo de las tablas.

20.1. Dar clic derecho sobre Entrenamiento, elegir Add Command y luego dar clic derecho

sobre .

20.2. Dejar la propiedad Command Name en SQLEmpleados, elegir SQL statement y copiar la

siguiente sentencia SQL:

SELECT Empleados.emp_nombre AS Nombre, Empleados.emp_apellido AS Apelido, Departamento.depto_nombre AS Departamento FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id

Page 19: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 19

20.3. Luego de este paso, el Entorno de datos debe lucir similar a la siguiente figura:

21. Para mostrar los datos en el formulario, en frmPoDpto, dar clic en la tabla dgEmpleados, y

dejar las propiedades DataSource en deDatos, DataMember en SQLEmpleados,

AllowAddNew en False, AllowDelete en False y AllowUpdate en False.

22. Dar clic derecho sobre deEmpleados y luego dar clic en Retrieve Fields, de esta forma se

obtienen los campos de la tabla.

23. Para cambiar las propiedades y formato de la tabla dar clic derecho sobre la tabla y luego dar

clic en Properties..

24. Escribir el código para realizar las consultas

24.1. En la ventana donde se presentan las opciones de búsqueda, programar el botón de

“Buscar” para que de acuerdo con la selección hecha (Todos, Por Nombre o Por

Departamento), muestre el resultado de la búsqueda.

Page 20: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 20

24.2. Seleccionar el evento clic del botón Buscar y elaborar un programa como el siguiente:

Nota: El texto en gris debe ser escrito en la misma línea.

25. Crear una ventana, que sea el nuevo punto de entrada y exhiba en menús las posibilidades

que presenta el aplicativo, ver las siguientes cinco figuras:

Dar clic derecho sobre el explorador de proyectos y seleccionar add � MDI Form; de esta

forma se creara un formulario padre dentro del cual se podrán ejecutar las demás ventanas

(al estilo de Microsoft Word y otras aplicaciones). Dejar la propiedad Caption en “Aplicativo

para entrenamiento” y cambiar la propiedad Icon por Inicio.ico

Private Sub cb_Buscar_Click() If optTodos.Value = True Then deDatos.rsSQLEmpleados.Close

deDatos.rsSQLEmpleados.Open "SELECT Empleados.emp_nombre AS Nombre, Empleados.emp_apellido AS Apelido, Departamento.depto_nombre AS Departamento FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id"

dgEmpleados.DataMember = "SQLEmpleados" ElseIf optPorNombre.Value = True Then

deDatos.rsSQLEmpleados.Close deDatos.rsSQLEmpleados.Open "SELECT Distinct Empleados.emp_nombre AS Nombre, Empleados.emp_apellido AS Apelido, Departamento.depto_nombre AS Departamento FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id AND Empleados.emp_nombre='" & txtNombre.Text & "' OR Empleados.emp_apellido='" & txtPrimerApellido.Text & "'"

dgEmpleados.DataMember = "SQLEmpleados" ElseIf optPorDepartamento.Value = True Then deDatos.rsSQLEmpleados.Close

deDatos.rsSQLEmpleados.Open "SELECT Empleados.emp_nombre AS Nombre, Empleados.emp_apellido AS Apelido, Departamento.depto_nombre AS Departamento FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id AND Departamento.depto_nombre='" & cmbDepartamentos.Text & "'"

dgEmpleados.DataMember = "SQLEmpleados" End If End Sub

Page 21: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 21

Page 22: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 22

26.1. Para crear el menú, presionar el icono menú ubicado en la barra de herramientas , y en

el editor de menú escribir lo siguiente:

La flecha hacia la derecha sirve para que el menú se convierta en un submenú. Escribir los

nombre de los menús de la siguiente forma mnuServicios si es un menú principal, si es un

submenú escriba el nombre del menú padre o de los menús padres, de la siguiente forma

mnuPersonalBuscarNombre. Colocar una línea debajo de un carácter (subrayarlo), se logra

anteponiendo al nombre del control un ampersand (&), esto es válido para cualquier control.

27. Escribir los programas asociados con el evento clic para cada una de las opciones de los

menús, por ejemplo:

27.1. Para: F La calculadora

El argumento 1 sirve para mostrar el formulario de forma modal, es decir que ningún otro

formulario podrá tener el enfoque mientras éste se encuentre abierto.

27.2. Para: F Terminar

Private Sub mnuServiciosCalculadora_Click() frmCalculadora.Show 1 End Sub

Private Sub mnuServiciosTerminar_Click() Dim desicion As Byte decision = MsgBox("Desea salir del aplicativo", vbYesNo+vbInformation) If decision = 6 Then End End If End Sub

Page 23: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 23

27.3. Para: F Buscar F Todos

27.4. Para: F Buscar F Por nombre

27.5. Para: F Buscar F Por departamento

28. Guardar la nueva ventana con el nombre MDIPrincipal.

29. Cambiar el punto de inicio de la aplicación para que sea mdiPrincipal: Cambiar la propiedad

mdiChild de frmDpto a True.

30. Agregar facilidades de menú a la ventana de la calculadora, ver el ejemplo presentado en las

siguientes tres gráficas:

Private Sub mnuPersonalBuscarTodos_Click() frmPorDpto.Show frmPorDpto.optTodos.SetFocus End Sub

Private Sub mnuPersonalBuscarNombre_Click() frmPorDpto.Show frmPorDpto.optNombre.SetFocus End Sub

Private Sub mnuPersonalBuscarDepartamento_Click() frmPorDpto.Show frmPorDpto.optDepartamento.SetFocus End Sub

Page 24: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 24

ü Si desea colocar separadores entre los submenús como aparece en las figuras, en la

propiedad Caption del submenú escribir “-”, y colocar en Name Linea1, linea2, linea3 etc.

31. Escribir los programas asociados con el evento clic para cada una de las opciones de los

menús, por ejemplo:

Para: Archivo F Cerrar ventana

31.1. Para: Archivo F Salir del aplicativo

31.2 Para: Editar F Borrar todo

31.3 Para: Editar F Resultado a memoria

31.4. Para: Editar F Operando 1 a memoria

Private Sub mnuArchivoCerrar_Click() Unload Me End Sub

Private Sub mnuArchivoSalir_Click() End End Sub

Private Sub mnueditarBorrar_Click() txtPrimer.Text = "" txtSegundo.Text = "" lblResultado.Caption = "" End Sub

Private Sub mnuEditarMemoria_Click() 'Lleva el reultado a memoria Clipboard.SetText lblResultado.Caption End Sub

Private Sub mnuEditarOpernado1_Click() 'Copia el contenido del primer operando al clipboard Clipboard.SetText txtPrimer.Text End Sub

Page 25: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 25

32. Crear el ejecutable de la aplicación.

Desde el menú File seleccionar “Make Entrenamiento”, si hay algún error, Visual Basic indica

el lugar donde hay que hacer la corrección.

33. Salir de Visual Basic.

34. Verificar que la aplicación funciona correctamente desde Windows.

35. Crear ventanas, como las que se muestra a continuación:

Page 26: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 26

Page 27: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 27

35.1. En el explorador de proyectos hacer clic derecho y elegir Add � Form � Form

Cambiar la propiedad Caption por Actualizaciones, dejar la propiedad MinButton en False y

MaxButton en False,

35.2. Dar clic derecho sobre la barra de herramientas y elegir Components y luego seleccionar

Microsoft Tabbed Dialog Control 6.0, e insertar el control en el formulario.

35.3. Dar clic derecho sobre el control y dejar las propiedades Tab Count y TabPerRow en 4.

Desplazarse con los botones “<>” a través de los diferentes Tabs y cambiar la propiedad

TabCaption, así: Tab 1 Empleados; Tab 2 Actividades; Tab 3 Departamentos;

Tab 4 Niveles

35.4. Seleccionar uno a uno los tabs y dejar la propiedad Picture de cada uno.

35.5. Dejar la propiedad Name del control en tabActualizar.

35.6. Insertar los demás controles como se muestran en las figuras:

Cuatro commandButon para moverse entre las filas: cmdPrimero, cmdAnterior,

cmdSiguiente, cmdUltimo.

Dos commandButton para cmdAdicionar y cmdBorrar.

Un commandButton para cerrar la ventana cmdCerrar.

36. Crear la tabla a partir del Entorno de datos.

36.1. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento, dejar la

propiedad commandName en ActualizarEmpleados, y en SQL Statement copiar el siguiente

código:

En la pestaña Advanced en la propiedad Lock Type dejar su valor en 3 – Optimistic; dar clic

en Aceptar.

36.2. Arrastrar el comando desde el entorno de datos hasta el formulario, con el clic derecho (fuera

del Tab Control).

SELECT Empleados.emp_nombre AS Nombre, Empleados.emp_apellido AS Apelido, Departamento.depto_nombre AS Departamento, Empleados.emp_id AS Codigo FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id

Page 28: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 28

Elegir Data Grid, luego dar clic derecho sobre la nueva tabla, cortarla y pegarla dentro del tab

empleados, dar clic derecho sobre la grilla y luego sobre Retrieve Fields.

Dejar la propiedad AllowAddNew en False, AllowDelete en False y AllowUpdate en False.

Dar en formato deseado: grilla.

Grabar el formulario como frmActualizar.

36.3. Modificar el menú para que abra la nueva aplicación.

• En mdiPrincipal hacer clic en el menú Actualizar y en el evento

mnuPersonalActualizar_click escribir el siguiente código:

36.4. Grabar la aplicación y probar su funcionamiento.

37. Para la pestaña Actividades, crear los mismos controles de la pestaña empleados, con

diferentes nombres, por ejemplo: cmdPrimeroAct, cmdAnteriorAct, cmdSiguienteAct,

cmdUltimoAct, cmdAdicionarAct, cmdBorrarAct.

37.1. Crear la tabla Actividad a partir del Entorno de datos.

37.2. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento. Dejar la

propiedad commandName en ActualizarActividades, y en SQL Statement copiar el siguiente

código:

En la pestaña Advanced en la propiedad Lock Type dejar su valor en 3 – Optimistic; dar

clic en Aceptar.

37.3. Arrastrar el comando ActualizarActividades desde el entorno de datos hasta el formulario,

con el clic derecho (fuera del Tab Control).

Elegir Data Grid, luego dar clic derecho sobre la nueva tabla, cortarla y pegarla dentro del tab

empleados, dar clic derecho sobre la grilla y luego sobre Retrieve Fields.

Dejar la propiedad AllowAddNew en False, AllowDelete en False y AllowUpdate en False.

Dar en formato deseado: grilla.

38. Para la pestaña Departamentos crear los mismos controles de la pestaña empleados con

diferentes nombres por ejemplo: cmdPrimeroDpto, cmdAnteriorDpto, cmdSiguienteDpto,

cmdUltimoDpto, cmdAdicionarDpto, cmdBorrarDpto.

Private Sub mnuPersonalActualizar_Click() frmActualizar.Show 1 End Sub

SELECT Actividad.act_fecha AS Fecha, Actividad.act_hora AS Hora, Actividad.act_descripcion AS Descripcion, Empleados.emp_id AS `Codigo empleado`, Nivel.niv_nombre AS Nivel FROM Actividad, Empleados, Nivel WHERE Actividad.act_emp_id = Empleados.emp_id AND Actividad.act_nivel = Nivel.niv_id

Page 29: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 29

38.1. Crear la tabla Deparatmento a partir del Entorno de datos.

38.2. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento. Dejar la

propiedad commandName en ActualizarDepartamentos; en la propiedad Database Object

eligir Table y en ObjectName Departamento. En la pestaña Advanced en la propiedad Lock

Type dejar su valor en 3 – Optimistic; dar clic en Aceptar.

38.3. Arrastrar el comando ActualizarDepartamentos desde el entorno de datos hasta el formulario,

con el clic derecho (fuera del Tab Control).

Elegir Data Grid, luego dar clic derecho sobre la nueva tabla; cortarla y pegarla dentro del tab

empleados, hacer clic derecho sobre la grilla y luego sobre Retrieve Fields.

Dejar la propiedad AllowAddNew en False, AllowDelete en False y AllowUpdate en False.

Dar en formato deseado: grilla.

39. Para la pestaña Departamentos crear los mismos controles de la pestaña empleados con

diferentes nombres, por ejemplo: cmdPrimeroDpto, cmdAnteriorDpto, cmdSiguienteDpto,

cmdUltimoDpto, cmdAdicionarDpto, cmdBorrarDpto.

39.1. Crear la tabla Niveles a partir del Entorno de datos.

39.2. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento, dejar la

propiedad commandName en ActualizarNiveles; en la propiedad Database Object eligir Table

y en ObjectName Nivel. En la pestaña Advanced, en la propiedad Lock Type, dejar su valor

en 3 – Optimistic. Dar clic en Aceptar.

39.3. Arrastrar el comando ActualizarNivel desde el entorno de datos hasta el formulario, con el

clic derecho (fuera del Tab Control).

Elegir Data Grid, luego dar clic derecho sobre la nueva tabla; cortarla y pegarla dentro del tab

empleados, dar clic derecho sobre la grilla y luego sobre Retrieve Fields.

Dejar la propiedad AllowAddNew en False, AllowDelete en False y AllowUpdate en False.

Dar en formato deseado: grilla.

39.4. Luego de haber creado todos los comandos, el entorno de datos debe lucir similar a la

siguiente figura:

Page 30: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 30

40. Escribir el código relacionado con los eventos de los botones, en particular para la pestaña

Empleados.

40.1. Dar doble clic sobre el botón cmdPirmero .

40.2. En el evento clic, copiar el siguiente código.

40.3. Dar doble clic sobre el botón cmdAnterior

40.4. En el evento clic, copiar el siguiente código.

40.5. Dar doble clic sobre el botón cmdSiguiente

40.6. En el evento clic, copiar el siguiente código.

40.7. Dar doble clic sobre el botón cmdUltimo

40.8. En el evento clic, copiar el siguiente código.

40.9. Para los botones de las demás pestañas proceder de manera similar, cambiando el

rsActualizarEmpleado por el respectivo recordset, por ejemplo, rsActualizarDepartamento.

41. Para el botón Cerrar escribir el siguiente código.

Private Sub cmdPrimero_Click() deDatos.rsActualizarEmpleados.MoveFirst End Sub

Private Sub cmdSiguiente_Click() deDatos.rsActualizarEmpleados.MoveNext If deDatos.rsActualizarEmpleados.EOF = True Then deDatos.rsActualizarEmpleados.MoveLast End If End Sub

Private Sub cmdAnterior_Click() deDatos.rsActualizarEmpleados.MovePrevious If deDatos.rsActualizarEmpleados.BOF = True Then deDatos.rsActualizarEmpleados.MoveFirst End If End Sub

Private Sub cmdUltimo_Click() deDatos.rsActualizarEmpleados.MoveLast End Sub

Private Sub cmdCerrar_Click() Unload Me End Sub

Page 31: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 31

42. Para el botón Borrar de la pestaña Nivel escribir un código similar al siguiente:

Proceder de la misma forma para los botones borrar de las demás pestañas.

47. Crear una ventana como la siguiente:

En esta ventana se utiliza el control: TreeView. TreeView es un control que permite

desplegar información jerárquicamente. Cada ítem en un TreeView consiste de texto y una

imagen, los cuales pueden ser manipulados durante una rutina de programa.

Private Sub cmdBorraNiv_Click() 'Si no hay mas registros avisar If deDatos.rsActualizarNivel.RecordCount <> 0 Then deDatos.rsActualizarNivel.Delete Else MsgBox "No hay filas para eliminar", vbCritical + vbOKOnly End If End Sub

Page 32: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 32

Este TreeView va tener cuatro niveles. El primer nivel solo constará de un ítem con el texto

empresa. Los ítems del segundo nivel corresponden a los departamentos de la empresa, el

tercero a los empleados de cada departamento, y el cuarto a las actividades asignadas a los

empleados.

Usar el control ImageList el cual permite almacenar imágenes dentro de la aplicación, en

forma de arreglo.

40.1. En el explorador de proyectos, dar clic derecho y elegir Add � Form � Form

Cambiar la propiedad Caption por Explorar, dejar la propiedad MinButton en False,

MaxButton en False, y la propiedad Name dejarla en frmExplorar,

40.2. Dar clic derecho sobre la barra de herramientas elegir Components y luego seleccionar

Microsoft Windows Common Controls 6.0; insertar el control TreeView en el formulario,

darle el tamaño adecuado, dar clic derecho elegir properties y dejar la propiedad LineStyle de

la pestaña general en 1- tvwRootLines, LabelEdit en 1 - tvwManual y la propiedad

Indentation en 15. Dar clic en Aceptar.

40.3. Insertar los demás controles en la ventana (como lo muestra la figura) así, tres botones,

Expandir Todo (cmdExpandir), Contraer todo (cmdContraer) y Cerrar (cmdCerrar).

40.4. Guardar el trabajo realizado.

40.5. Modificar la opción del menú para que se abra la nueva ventana:

En el explorador de proyectos elegir mdiPrincipal y en el evento clic del menú Explorar

agregar el siguiente código.

40.6. Crear un control ImageList , este control no es visible durante la ejecución del programa

así que se puede ubicar en cualquier parte de formulario, dejar la propiedad nombre en

imlIconos, dar clic derecho sobre el control y seleccionar properties en la pestaña images.

Dar clic en InsertPictures e insertar las imágenes en el siguiente orden:

Private Sub mnuPersonalExplorar_Click() frmExplorar.Show 1 End Sub

Page 33: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 33

41. Crear la función para el manejo del TreeView.

• LlenarArbol

41.1. Función LlenarArbol

41.2. En la ventana de código de frmExplorar seleccionar el menú Tools � Add procedure

La nueva función tiene las siguientes especificaciones:

Name LlenarArbol

Type Sub

Scope Private

41.4. Colocar el siguiente código para la función

Private Sub LlenarArbol() Dim i As Integer With tvwDeptoEmpleado 'Se adiciona el primer nodo Empresa .Nodes.Add , , "s1Empresa", "Empresa", 1 deDatos.rsActualizarDepartamentos.Open deDatos.rsActualizarDepartamentos.MoveFirst 'Se adicionan los departamentos relativos al nodo empresa For i = 1 To deDatos.rsActualizarDepartamentos.RecordCount .Nodes.Add "s1Empresa", tvwChild, "s2" & CStr(deDatos.rsActualizarDepartamentos("depto_nombre")), CStr(deDatos.rsActualizarDepartamentos("depto_nombre")), 2 deDatos.rsActualizarDepartamentos.MoveNext Next deDatos.rsActualizarEmpleados.Open deDatos.rsActualizarEmpleados.MoveFirst 'Se adiciona cada uno de los empleados relativos a los departamentos For i = 1 To deDatos.rsActualizarEmpleados.RecordCount .Nodes.Add "s2" & CStr(deDatos.rsActualizarEmpleados("departamento")), tvwChild, "s3" & CStr(deDatos.rsActualizarEmpleados("codigo")), CStr(deDatos.rsActualizarEmpleados("Apelido")) & ", " & CStr(deDatos.rsActualizarEmpleados("Nombre")), 3 deDatos.rsActualizarEmpleados.MoveNext Next deDatos.rsActualizarActividades.Open deDatos.rsActualizarActividades.MoveFirst 'Se adicionan las actividades relativas a los empleados For i = 1 To deDatos.rsActualizarActividades.RecordCount .Nodes.Add "s3" & CStr(deDatos.rsActualizarActividades("codigo empleado")), tvwChild, "s4" & CStr(deDatos.rsActualizarActividades("Fecha")) & CStr(deDatos.rsActualizarActividades("Hora")) & CStr(deDatos.rsActualizarActividades("codigo empleado")), CStr(deDatos.rsActualizarActividades("descripcion")), 4 deDatos.rsActualizarActividades.MoveNext Next End With 'Se cierran los recordsets deDatos.rsActualizarDepartamentos.Close deDatos.rsActualizarEmpleados.Close deDatos.rsActualizarActividades.Close End Sub

Page 34: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 34

41.5. En el evento Load del formulario, llamar la función.

42. Añadir el código para los botones:

42.1. Dar doble clic sobre el botón “Expandir todo” y colocar el siguiente código.

En este código se hace referencia a la colección nodes del TreeView Control, se crea una

variable de tipo Node y se deja el valor de la propiedad Expanded en True, para indicar que

se debe expandir el control.

42.2. Para el botón “Contraer todo” se procede de forma similar utilizando el siguiente código.

42.3 Para el botón cerrar utilizar el siguiente código:

Private Sub Form_Load() If deDatos.rsActualizarDepartamentos.State = adStateOpen Then deDatos.rsActualizarDepartamentos.Close End If If deDatos.rsActualizarEmpleados.State = adStateOpen Then deDatos.rsActualizarEmpleados.Close End If If deDatos.rsActualizarActividades.State = adStateOpen Then deDatos.rsActualizarActividades.Close End If LlenarArbol

Private Sub cmdExpandir_Click() Dim Nodo As Node For Each Nodo In tvwDeptoEmpleado.Nodes Nodo.Expanded = True Next End Sub

Private Sub cmdContraer_Click() Dim Nodo As Node For Each Nodo In tvwDeptoEmpleado.Nodes Nodo.Expanded = False Next End Sub

Private Sub cmdCerrar_Click() Unload Me End Sub

Page 35: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 35

43 Modificar la ventana creada en los pasos anteriores para que luzca de la siguiente forma:

El control que se añade se denomina ListView. Un ListView muestra información en forma de

lista al usuario. Cada ítem del ListView consiste de texto y un dibujo. En este caso, el

ListView mostrará los ítems del nivel inferior al que se encuentre seleccionado en el árbol.

Los botones “Lista”, “Detalles” e “Iconos Grandes”, cambian la forma de presentación de los

ítems en el ListView. Cuando el usuario da doble click sobre uno de los ítems del ListView,

se desplegan los ítems del nivel inferior, y se expande la correspondiente porción en el árbol.

Los ítems se ordenarán de acuerdo a lo que el usuario seleccione las cabeceras de las

columnas, de forma similar a como ocurre, por ejemplo, en el explorador de Windows.

43.1 Crear un control ListView y dejar el valor de las siguientes propiedades:

Name lvDeptoEmpleados

43.2 Insertar los demás botones como se muestra en la pantalla.

Lista (cmdLista), Detalles (cmdDetalles), Iconos grandes (cmdIconosGrandes)

43.3 Grabar el trabajo adelantado

Page 36: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 36

44. Crear los comandos en el Entorno de datos.

44.1. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento, dejar la

propiedad commandName en Empleados, y en SQL Statement copiar el siguiente código:

Dar clic en Aceptar.

44.2. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento. Dejar la

propiedad commandName en Departamentos, en la propiedad Database Object elegir Table

y en ObjectName Departamento. Dar clic en Aceptar.

44.3. Dar doble clic en deDatos y crear un comando para la conexión Entrenamiento, Dejar la

propiedad commandName en Actividades, y en SQL Statement copiar el siguiente código:

Dar clic en Aceptar.

SELECT Empleados.*, Departamento.depto_nombre AS Depto_nombre FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id

SELECT Actividad.act_emp_id, Actividad.act_fecha, Actividad.act_hora, Nivel.niv_nombre, Actividad.act_descripcion FROM Actividad, Nivel, Empleados WHERE Actividad.act_nivel = Nivel.niv_id AND Actividad.act_emp_id = Empleados.emp_id

Page 37: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 37

45. Para el evento clic del TreeView escribir el siguiente código:

Private Sub tvwDeptoEmpleado_Click() Dim Accion As String Accion = Mid(tvwDeptoEmpleado.SelectedItem.Key, 1, 2) lvDptoEmplados.ColumnHeaders.Clear lvDptoEmplados.ListItems.Clear With lvDptoEmplados Select Case Accion Case "s1" .ColumnHeaders.Add , , "Nombre", "3000" .ColumnHeaders.Add , , "Codigo" deDatos.rsDepartamento.Open deDatos.rsDepartamento.MoveFirst While Not deDatos.rsDepartamento.EOF lvDptoEmplados.ListItems.Add(, , deDatos.rsDepartamento(1), 2, 2).SubItems(1) = deDatos.rsDepartamento(0) deDatos.rsDepartamento.MoveNext Wend deDatos.rsDepartamento.Close Exit Sub Case "s2" .ColumnHeaders.Add , , "Apellido, nombre", "2500" Debug.Print Mid(tvwDeptoEmpleado.SelectedItem.Key, 2) .ColumnHeaders.Add , , "Codigo" deDatos.rsEmpleados.Open "SELECT Empleados.*, Departamento.depto_nombre AS Depto_nombre FROM Departamento, Empleados WHERE Departamento.depto_id = Empleados.emp_depto_id and Departamento.depto_nombre='" & Mid(tvwDeptoEmpleado.SelectedItem.Key, 3) & "'" If deDatos.rsEmpleados.AbsolutePosition < 0 Then deDatos.rsEmpleados.Close Exit Sub End If deDatos.rsEmpleados.MoveFirst While Not deDatos.rsEmpleados.EOF lvDptoEmplados.ListItems.Add(, , deDatos.rsEmpleados(1) & ", " & deDatos.rsEmpleados(2), 3, 3).SubItems(1) = deDatos.rsEmpleados(0) deDatos.rsEmpleados.MoveNext Wend deDatos.rsEmpleados.Close Exit Sub Case "s3" .ColumnHeaders.Add , , "Fecha" .ColumnHeaders.Add , , "Hora" .ColumnHeaders.Add , , "Nivel", "1500" .ColumnHeaders.Add , , "Descripcion", "4000" deDatos.rsActividades.Open "SELECT Actividad.act_emp_id, Actividad.act_fecha, Actividad.act_hora, Nivel.niv_nombre, Actividad.act_descripcion FROM Actividad, Nivel, Empleados WHERE Actividad.act_nivel = Nivel.niv_id AND Actividad.act_emp_id = Empleados.emp_id AND Empleados.emp_id=" & Mid(tvwDeptoEmpleado.SelectedItem.Key, 3) If deDatos.rsActividades.AbsolutePosition < 0 Then deDatos.rsActividades.Close Exit Sub End If deDatos.rsActividades.MoveFirst While Not deDatos.rsActividades.EOF With lvDptoEmplados.ListItems.Add(, , deDatos.rsActividades(1), 4, 4) .SubItems(1) = deDatos.rsActividades(2) .SubItems(2) = deDatos.rsActividades(3) .SubItems(3) = deDatos.rsActividades(4) End With deDatos.rsActividades.MoveNext Wend deDatos.rsActividades.Close Exit Sub End Select End With End Sub

Page 38: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 38

46. Elaborar el código para los demás botones:

46.1 Para el botón cmdLista (“Lista”) escribir un código similar al siguiente:

46.2 Para el botón cmdDetalles (“Detalles”) escribir un código similar al siguiente:

46.3 Para el botón cmdIconosGrandes (“Iconos grandes”) escribir un código similar al siguiente:

47. Correr la aplicación y probar su funcionamiento.

Private Sub cmdLista_Click() lvDptoEmplados.View = lvwList End Sub

Private Sub cmdDetalles_Click() lvDptoEmplados.View = lvwReport End Sub

Private Sub cmdIconosGrandes_Click() lvDptoEmplados.View = lvwIcon End Sub

Page 39: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 39

Page 40: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 40

Page 41: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 41

48. Crear el setup de la aplicación:

48.1 Abrir el asistente de empaquetado y distribución. Menú Inicio -> Programas -> Microsoft

Visual Studio 6.0 -> Microsoft Visual Studio 6.0 Tools -> Package & Deployment Wizard

(Asistente del empaquetado y distribución).

48.2 Dar clic en el botón BROWSE y ubicar el archivo Entrenamiento.vbp.

Dar haga clic en el botón Package .

48.3 Si la versión del archivo *.exe no es la ultima o la más reciente aparecerá un mensaje como

el siguiente.

Dar clic en Si para volver a compilar el proyecto, clic en No para utilizar el ejecutable actual.

Page 42: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 42

48.4 Elegir la plantilla de instalación. Si no hay ninguna creada, elegir (None) y luego clic en Next.

48.5 Clic en Next

48.6 Elegir la carpeta en la cual se van a guardar los archivos.

Page 43: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 43

48.7 Adicionar los archivos adicionales. Dar clic en el botón Add y ubicar la base de datos. Dar clic

en Next->.

48.8 Clic en Next->

48.9 Escribir el nombre de la aplicación.

Page 44: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Entrenamiento en Visual Basic 6.0 Página 44

48.10 Clic en Next->, Next->, Next-> 48.11 Escribir el nombre del Script de instalación, y dar clic en Finish.

Page 45: Entrenamiento VisualBasic 6 - Johngonzalezrojas's · PDF fileEntrenamiento en Visual Basic 6.0 Página 2 ENTRENAMIENTO EN VISUAL BASIC 6.0 Visual Basic 6 es una herramienta que se

Nombre de archivo: Entrenamiento_VisualBasic_6.doc Directorio: D:\Casa\Ismael\LenguajeVB Plantilla: C:\WINDOWS\Application

Data\Microsoft\Plantillas\Normal.dot Título: Entrenamiento en Visual Basic 6 Asunto: Entrenamiento en Visual Basic Autor: Ismael Castañeda Fuentes Palabras clave: Visual Basic, Bases de Datos, Aplicativo Comentarios: Esta versión fué preparada por Francisco Javier Parra Gómez

con base en un ejercicio anterior, desarrollado para otra herramienta de programación.

Fecha de creación: 30/08/03 01:57 P.M. Cambio número: 116 Guardado el: 30/08/03 09:03 P.M. Guardado por: Ismael Castaneda Fuentes Tiempo de edición: 448 minutos Impreso el: 30/08/03 09:03 P.M. Última impresión completa Número de páginas: 44 Número de palabras: 4,966 (aprox.) Número de caracteres: 26,325 (aprox.)