guia de visual basic

81
TEXTO: LABORATORIO DE VISUAL BASIC . LABORATORIO DE COMPUTACION PARA INGENIERIA (MATERIA CIV 275) ASIGNATURA: LAB CIV 275: Laboratorio Computación para Ingeniería LEGUAJE DE PROGRAMACION Lenguaje de Alto Nivel: Visual Basic OBJETIVOS DEL PROYECTO: Desarrollar esquemas normalmente aceptables para representar procesos como procedimientos lógicos. Programar computadoras a través de un lenguaje de programación (Visual Basic) para procesos técnicos- científico. Desarrollar un proyecto (Software) de aplicación para Ingeniería Civil con propósitos académicos. Incorporar cálculos numéricos y lógicos para elaborar algoritmos computacionales. ALCANCE TEMATICO DEL PROYECTO: Tema 1. Entorno del Visual Basic Tema 2. Introducción a la programación Tema 3. Fundamentos de la Programación Tema 4. Estructuras de decisión If..Then…Else Tema 5. Estructura de decisión Select Case Tema 6. Estructuras de Bucle Tema 7. Matrices- Arrays Tema 8. Procedimiento función-sub Tema 9. Base de datos y Archivos MAGNITUD DEL PROYECTO: Desarrollar Software aplicado a la ingeniería Civil aplicando los temas desarrollados en laboratorio de computación VALORACION DEL PROYECTO: Examen escrito por capítulos 30% Practicas en laboratorio por capítulos 30% Practicas de aplicación a la ingeniería 30% Asistencia 10% Total 100% MSc. Ing. ADEMAR PASTEN GIRONDA 1

Upload: luis-miguel-mita

Post on 05-Dec-2014

48 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

LABORATORIO DE COMPUTACION PARA INGENIERIA (MATERIA CIV 275)

ASIGNATURA: LAB CIV 275: Laboratorio Computación para Ingeniería

LEGUAJE DE PROGRAMACIONLenguaje de Alto Nivel: Visual Basic

OBJETIVOS DEL PROYECTO: Desarrollar esquemas normalmente aceptables para representar procesos como

procedimientos lógicos. Programar computadoras a través de un lenguaje de programación (Visual Basic) para

procesos técnicos-científico. Desarrollar un proyecto (Software) de aplicación para Ingeniería Civil con propósitos

académicos. Incorporar cálculos numéricos y lógicos para elaborar algoritmos computacionales.

ALCANCE TEMATICO DEL PROYECTO:Tema 1. Entorno del Visual BasicTema 2. Introducción a la programaciónTema 3. Fundamentos de la ProgramaciónTema 4. Estructuras de decisión If..Then…ElseTema 5. Estructura de decisión Select CaseTema 6. Estructuras de BucleTema 7. Matrices- ArraysTema 8. Procedimiento función-subTema 9. Base de datos y Archivos

MAGNITUD DEL PROYECTO:Desarrollar Software aplicado a la ingeniería Civil aplicando los temas desarrollados en laboratorio de computación

VALORACION DEL PROYECTO: Examen escrito por capítulos 30%

Practicas en laboratorio por capítulos 30%Practicas de aplicación a la ingeniería 30%Asistencia 10% Total 100%

MsC. Ing. Adhemar Pasten Gironda

Nota: Mayor a dos inasistencias y la falta de entrega de las practicas de aplicación a la ingeniería representa la reprobación de la materia

MSc. Ing. ADEMAR PASTEN GIRONDA1

Page 2: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA IMANEJO DEL ENTORNO DE PROGRAMACION DEL

VISUAL BASIC

1. Ingresar al Visual Basic. Desde el escritorio del Windows, se debe seguir los siguientes pasos:

Al hacer clic en el icono de Visual Basic 6.0, aparece el cuadro de dialogo Nuevo proyecto. Este cuadro de diálogo le solicita que seleccione el tipo de proyecto de programación que desea crear. Haga clic en el botón Abrir para aceptar el nuevo proyecto propuesto por defecto, una aplicación estándar de 32 bits para Visual Basic.

En el entorno de programación de Visual Basic se abrirá un proyecto nuevo, junto con algunas de las ventajas y herramientas que se muestra en la siguiente ilustración:

MSc. Ing. ADEMAR PASTEN GIRONDA

Inicio

…………………………………………………………Microsoft Visual Basic 6.0……………………………

…………………………………………………………………………………………………………………….……………………………Microsoft Visual Studio 6.0…………………………………………………………..…………………………….

2

Page 3: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Barra de herramientas estándar Explorador de Proyecto Barra de menús

Herramientas o Controles Propiedades Formulario Posición de Formulario

2. Diseño de la interfaz de usuario. Al Formulario se transfieren los comandos que uno requiere de la ventana de herramientas.

Algunos de los Controles o herramientas se puede ver en el cuadro 1.1.

MSc. Ing. ADEMAR PASTEN GIRONDA3

Page 4: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Cuadro 1.1. Controles o HerramientasControl Definicion

Label Se utiliza para mostrar texto. Puede ser transparente, de forma que el texto parece que forma parte del formulario. El texto de este control se define en la propiedad Caption

TextBox Este control es un pequeño editor de texto y su propiedad principal es Text, con la que se puede poner un texto fijo en el control o leer el texto que introduzca el usuario

Frame Se utiliza para agrupar objetos relacionados entre si. Para agrupar controles, dibuje primero el marco y después dibuje los controles dentro del marco

Commandulton Crea un botón en el que el usuario puede hacer clic para ejecutar un comando.

CheckBox Este control presenta múltiples opciones de las que el usuario puede elegir más de una

OptionButon Este control muestra múltiples opciones de las que el usuario solo puede elegir una

ComboBox Este control es una combinación de un cuadro de texto y un cuadro de lista. El usuario puede seleccionar un elemento de la lista o escribir un valor en el cuadro de texto.

ListBox Se utiliza para mostrar una lista de elementos de los que el usuario puede seleccionar uno

Hscrollbar Se utiliza para desplazar la información de una caja hacia la izquierda o hacia la derecha

VscrollBar Se utiliza para desplazar la información de una caja hacia arriba o hacia abajo

Timer Permite activar procesos a intervalos regulares de tiempo.DriveListBox Se utiliza para visualizar una lista de las unidades de disco

disponibles para que el usuario pueda seleccionar una.DirListBox Se utiliza para visualizar una lista de carpetas de un

dispositivo seleccionado en los que el usuario puede moverse

FileListBox Se utiliza para visualizar una lista de archivos contenidos en la carpeta seleccionada a los que el usuario puede acceder

Shape Permite dibujar rectángulos, cuadrados, elipses o círculos en el formulario

Line Se utiliza para dibujar una gran variedad de estilos de linea en el formulario

Image Se utiliza para mostrar en el formulario una imagen grafica de un mapa de bits, un icono o un archivo

Data Este control proporciona acceso a una base de datos existente y visualizar su información en el formulario

MSc. Ing. ADEMAR PASTEN GIRONDA4

Page 5: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Cuando no se puede ver en el cuadro de herramientas un control se puede incrementar, colocando el puntero en la ventana de herramientas y pulsando el boton derecho del maus.Nos mostrara el siguiente menú

ComponentesAgregar FichaAcopleOcultar

Del cual elegimos Componentes que nos mostrara la siguiente pantalla:

Por ejemplo en esta ventana se marca el componente Microsoft FlexGrid Control 6.0 (sps) y se digita aceptar. Esto nos muestra en la ventana de herramientas el icono MSflexGrid que nos permitirá diseñar el siguiente formulario:

MSc. Ing. ADEMAR PASTEN GIRONDA5

Page 6: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

3. Asignación de propiedades a los controles. En la ventana de propiedades se asigna a cada control sus propiedades requeridas.

Algunas propiedades se muestran en el cuadro 1.2.

Cuadro 1.2. PropiedadesPropiedades Descripción

Alignment Determinar si el mensaje aparece alineado a la izquierda a la derecha o al centro de la etiqueta

Autosize Determina si la etiqueta cambia de tamaño de manera automática para mostrar todo el mensaje

Backcolor Devuelve o establece el color de fondoBackStyle Determina si el color de fondo es transparente u opaco

Si se elige 0-Transparent se vera lo que esta detrás de la etiqueta

BorderStyle Devuelve o establece el estilo de borde Elija 1-FixedSingle y una línea bordeara la etiqueta

Cancel Establece si el botón de comando se comportara como el botón cancelar en el formulario

Caption Contiene el mensaje que aparece en la etiquetaColumns Devuelve o establece un valor que determina si un control

LisBox se desplaza verticalmente en una única columna (valor 0) u horizontalmente en columnas periodísticas (valores mayores que 0)

Default Establece si el botón será activado con la tecla Enter

MSc. Ing. ADEMAR PASTEN GIRONDA6

Page 7: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Propiedades DescripciónEnabled Determina si la etiqueta estará activa. Cambie esta

propiedad en tiempo de ejecución para que la etiqueta no responda a eventos generados por el usuario

Font Muestra el cuadro de dialogo Fuente en el que se establece el nombre, el estilo y tamaño de la fuente usada en el mensaje

Forecolor Devuelve o establece el color del mensajeHeight Devuelve o establece la altura de la etiquetaLeft Establece la distancia entre el borde izquierdo de la

etiqueta y el borde izquierdo del formularioList Es un arreglo que contiene los elementos de la lista

comienza con índice 0.List Index Contiene el índice del elemento seleccionado, el cual es un

numero entre 0 (primer elemento) y el numero total de elementos en la lista -1 (ListCount -1)

List Count Numero total de elementos de la listaLocked Determina si el usuario puede editar el texto

MaxLength Especifica el numero máximo de caracteres que se puede escribir en un cuadro de texto

Mouse Pointer Determina la forma del puntero del mouse al pasar el puntero sobre la etiqueta.

Multi Line Permite que el cuadro de texto acepte múltiples líneas de texto

MultiSelect Determina como puede seleccionar el usuario los elementos de la lista

NewIndex Contiene el índice del ultimo elemento añadido a la listaName Nombre usado en el código para identificar a la etiquetaPasswor Char Determina el carácter que aparece cuando el usuario

introduce una contraseñaScroll Bars Determina si la caja de texto tendrá barra de

desplazamiento vertical horizontal o ambasSelected Arreglo de valores lógicos paralelo y del mismo tamaño al

arreglo List, indica que elementos han sido seleccionado establecemos la propiedad Multiselect en 1 o 2

Sorted True/false. Ordena alfabéticamente los elementos de la lista

Style Establece el comportamiento del control ComboBox.Puede tomar los siguientes valores

TabInex Devuelve o establece el orden de tabulación del objetoTabStop Determina si el cuadro de texto puede recibir el enfoque.Text Contiene el texto del cuadro

MSc. Ing. ADEMAR PASTEN GIRONDA7

Page 8: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Propiedades DescripciónTool Tiptexl Devuelve o establece el texto mostrado cuando el puntero

del mouse se sitúa sobre el controlTop Devuelve o establece la distancia entre el borde superior de

la etiqueta y el borde superior del contenedorValue Indica si el botón de opcion esta activada, desactivada.

Cuando esta activada, Value se establece a true.Visible Determina si la etiqueta estará visible u ocultaWidth Devuelve o establece el echo de la etiquetaWordWrap Determina si la etiqueta se expande para ajustarse al textoTagInterval

4). Codificación en la ventana de código. Para que se pueda ver la ventana de código se hace doble Chick en el control elegido. En la ventana de códigos se transcribe la codificación del control elegido.

Por defecto muestra el encabezamiento Private Sub Nombre del control_Click ( ) y pie de codificación End Sub

MSc. Ing. ADEMAR PASTEN GIRONDA8

Page 9: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

5. Gravar en el Visual Basic. Digitar en la barra de menús la instrucción “Archivo” y seguir los siguientes pasos:

.

6. Corrida y corrección del programa. Digitar ► en la barra de herramientas. Estándar con el Mouse

Introducimos los datos que nos pide el programa por ejemplo en la pantalla anterior se ingresa Apellidos y nombres

MSc. Ing. ADEMAR PASTEN GIRONDA

Guardar proyecto como

Guardar en : Disco A:Nombre (*. Frm: formulario 1Nombre (*.Frm): formulario 2Nombre (*.Frm): formulario 3………………………………GUARDAR

Nombre (*.vbp): Ejemplo1GUARDAR

9

Page 10: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

7. Salir del Visual Basic. Digitar en la barra de menús la instrucción “Archivo” y seguir los siguientes pasos:

.

MSc. Ing. ADEMAR PASTEN GIRONDA

Quitar proyecto

Salir

10

Page 11: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 2PROGRAMACION

1. Programación

La programación se podría considera como el conjunto de actividades y operaciones tendente a instruir a la máquina para que pueda realizar la funciones previstas en el algoritmo.

La programación se comienza antes de que la codificación es hecha, y continua un extenso proceso hasta que el programa quede terminado, este proceso es continuo y se lo conoce como ciclo de vida del programa.

Los pasos empleados para crear y usar un programa son:

Dependiendo del caso, puede omitirse algún paso, o añadir otros adicionales.

MSc. Ing. ADEMAR PASTEN GIRONDA

PLANIFICACION DEL PROYECTODiseño de pantalla

ESPECIFICACIONES DEL PROYECTODefinir el Algoritmo (Diagrama de flujo)

BASE DE DATOS Datos para prueba de escritorio

CODIFICACION DEL PROYECTOCodificar en lenguaje Visual Basic

EDICION DEPURACION Y VERIFICACION DEL PROYECTOTrabajo en computadora

DOCUMENTACION DEL PROYECTOArchivar en disco el programa Fuente y Objeto

MANTENIMIENTO DEL PROYECTOActualizar el programa en diferentes versiones

Trabajo de escritorio

Trabajo en computadora

11

Page 12: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

La palabra “programación se emplea con múltiples significados. Puede significar escribir un programa sobre papel, o acompasar todas las fases necesarias para diseñar un programa y conseguir que pueda ser ejecutado correctamente. Debido a que la programación habitualmente incluye el proceso completo, la segunda definición es más empleada. Nosotros llamaremos a la escritura de un programa sobre papel diseño de programa que comprende la planificación, especificaciones, prueba de escritorio y codificación del programa. Es esta una de las fases más importantes durante el proceso de programación.

Veamos, a continuación, la fase de diseño del programa .Cuando se muestra la solución a un problema, o describe la secuencia de acciones a ejecutar, se debería especificar primero un algoritmo y después debería crearse una estructura de datos (para ser manipulados por el algoritmo). Más tarde, el algoritmo puede ser traducido a programa, empleando un lenguaje de programación como puede ser el Visual Basic.

En este punto, se escribe un programa en un papel. Si es posible, cada programa escrito sobre papel debe ser comprobado para verificar su validez. En particular, es altamente recomendable que el programador compruebe, calculando los valores manuales, la validez del programa escrito sobre papel en unos cuantos casos. Es habitual el caso de que, en la secuencia completa de programación, la fase que más tiempo requiere es la de depuración que consiste en identificar y corregir los errores. Usando los pasos de diseño adecuados y comprobando el programa manuscrito, el programador puede a menudo ahorrar una gran cantidad de tiempo en la fase de depuración.

Una vez Diseñado el programa o el programa manuscrito ha sido comprobado manualmente, se introduce en el sistema del ordenador.

El programa debe ser introducido en el sistema del ordenador como archivo. El programa que permite la conveniente escritura de texto en un archivo se llama Editor. El editor es un programa especial diseñado para la entrada de texto. Permite usar o borra caracteres o palabras, añadir o insertar texto, sustituir letras y palabras y buscar combinaciones de caracteres datos. Cuanto más potente sea el editor, más sencilla es la fase de introducción del programa. Una posibilidad útil que ofrece el editor, de especial importancia, es la indentación o sangrado. Estos constituyen un aspecto importante de la legibilidad de los programas en Visual Basic.

Una vez que el programa escrito a mano se ha introducido en el sistema del ordenador, con ayuda del programa editor, se almacena normalmente como un archivo. El siguiente paso es examinar el archivo para asegurarse de que no se han cometido errores durante la operación de inserción. El programa debe ser listado.

El programa guardado como archivo debe ser listado ahora en la impresora. Esta función la realiza el sistema de archivo, un programa que es parte del sistema operativo. Aquel permite la transferencia de un archivo del disco a la impresora, así como de un disco a otro. Además, provee facilidades que se pueden emplear para cambiar los nombres de los ficheros y especificar varios atributos.

MSc. Ing. ADEMAR PASTEN GIRONDA12

Page 13: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Si no se dispone de impresora para el listado de archivo, éste puede verse en la pantalla del terminal para cotejarlo con el archivo escrito a mano. En la práctica, el listado es muy conveniente, pues facilita la legibilidad del programa y disminuye el riesgo de errores.

El programa ha sido ahora introducido en el ordenador como un archivo que se supone correcto desde todos los puntos de vista. Ahora está preparado para ser ejecutado.La ejecución del programa se lleva a cabo en dos fases una la compilación y la segunda la ejecución propiamente dicha.

Un programa escrito en un lenguaje de alto nivel no puede ser ejecutado directamente por el ordenador, ya que este sólo comprende un conjunto limitado de instrucciones binarias. El programa debe, pues, o bien ser traducido a su forma binarias. O bien decodificado por un intérprete. En el caso del Visual Basic, se usa generalmente un compilador especial (el programa se compila a código objeto).

Las instrucciones de alto nivel (instrucciones Visual Basic) se traducen a un conjunto equivalente al de instrucciones de lenguaje máquina. El programa traducido resultante se denomina archivo de código objeto. Si ese programa contiene errores de sintaxis, el compilador genera diagnósticos o mensajes de error que informa al programador del tipo y localización de los errores.

Una vez traducido, el código objeto esta listo para ser ejecutado. La ejecución la realiza un módulo separado del compilador, denominado módulo de ejecución que termina con la ejecución del programa. Si el programa era correcto, los resultados aparecerán en la pantalla o serán impresos; si era incorrecto, se generarán mensajes de error.

Lo importante aquí es ver que la mayoría de los compiladores trabajan en dos fases: una de traducción y otra de ejecución. Además, algunos compiladores hacen más compacto y aumentan la velocidad del código objeto, optimizando el uso de los registros internos del ordenador y sacando algunas instrucciones fuera de lazos. Un paso de optimización como éste es importante para la velocidad de ejecución, pero costoso de implementar y por ello poco usual.

Para comprobar el programa, este debe ser ejecutado tantas veces como sea posible con diferentes datos, de forma que se pueda comprobar el correcto funcionamiento. Para facilitar esta tarea, puede existir un programa depurador (ebugger),

La función de un programa depurador es facilitar esta tarea. La principal posibilidad de este es el establecimiento de “punto de ruptura”. Estos son mandatos especiales que se pueden usar para detener la ejecución del programa en un punto determinado. Siendo capaz de parar en programa, el programador puede examinar los valores de las variables y contenidos de memoria. Luego, es posible comprobar la correcta operación del programa en puntos de ruptura determinados. Si no se dispone de programa de comprobación, es necesario buscar otros métodos de comprobación.

El desarrollo de un programa debe ser documentado, para lo cual dividiremos en la documentación del programa fuente y objeto:

MSc. Ing. ADEMAR PASTEN GIRONDA13

Page 14: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

La documentación del programa fuente se encuentra detallado la descripción, análisis, algoritmos y codificación del programa. Mientras que la documentación del programa fuente se explica el funcionamiento del programa mediante un manual desde su ingreso hasta su salida. Este documento se conoce como el manual del programa.

Una vez terminada, presentada y aceptada el programa habrá una gran tendencia a modificar (mejoras no consideradas, sin embargo se tendrá una gran sorpresa cuando se descubra que el mantenimiento y codificación de un programa puede constar de 2 a 4 veces el programa original. Una primera categoría involucra a las correcciones que se desean cuando el usuario emplea comandos que no se han tomado en cuenta. Otra motivación para modificar el programa son las mejoras ya mencionadas, sin embargo para estas mejoras es posible que sean requeridas muchas modificaciones además del deseo de incorporar el sistema a ambientes para los cuales no ha sido diseñado, situación típicas en el momento de aceptación. Además de las anteriores están los cambios de adaptación posiblemente debido a mejoras tanto en Hardware como en Software externo.

2. Ejemplo de programación

Planificación del proyecto

Diseño de dos pantalla. En una hoja cuadriculada los siguientes formularios.En el formulario 1 muestra la hora que corre el programaEn el formulario 2 solo visualiza una viga que tiene una carga distribuida cuando se le indique mediante el control ver carga.

Formulario1 Formulario 2

Especificaciones del proyecto

Definir el Algoritmo. Se desarrolla el diagrama de flujo del control elegido utilizando las normas del Instituto de Normalización Americano (ANSI).

MSc. Ing. ADEMAR PASTEN GIRONDA

LABORATORIO DE COMPUTACION CIV 275 VISUALIZAR UNA CARGA

Apellido PaternoApellido MaternoNombreHora:

VER FORM 1 SALIR VER CARGA RETORNAR

CARGA

14

Page 15: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Base de datos- Datos para prueba de escritorio

Para generar una base de datos para la prueba de escritorio se tiene que tener conocimiento del proyecto. Estos datos tienen que ser colocados en una planilla que nos muestre los datos de entrada y resultados esperado:

DATOSDE ENTRADA

RESULTADOSESPERADOS

Largo RaCarga Q Rb

Codificación de proyecto

Antes de codificar se tiene que establecer las propiedades de cada control de la siguiente manera:

Propiedades de los controlesControl Propiedad ValorForm1Label1 Caption MANEJO DE HERRAMIENTAS….Label2 Caption EJEMPLO: VISUALIZAR CARGAFrame1 Caption GraficoLabel3 Name

Caption lblQ“q =”

Label4 NameCaption

LblH“ “

Text1 Name TxtQCommand1 Name

CaptionCmdVerCargaVer Carga

Command2 NameCaption

CmdSalirSalir

MSc. Ing. ADEMAR PASTEN GIRONDA

INICIO Retornar

FIN

SALIR(Digitar Enter )

INICIO Ver Carga

INICIO Salir

INICIOFormulario 1

FIN

FIN FIN

Ir al formulario 2

Desde el Formulario 1

Ir al formulario 1

Desde el Formulario 2

Ver Carga(Distribuida)

15

Page 16: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Codificación de control. (Programa Fuente) Se codifica el control elegido de acuerdo al diagrama de flujo y las propiedades de cada control.

Formulario 1Control Tiempo:Private Sub Time_Click()LblH.Caption = TimeEnd SubControl ver formulario1:Private Sub CmdVerform1_Click()Fom2.ShowUnload Form1End SubControl SalirPrivate Sub CmdSalir_Click()EndEnd SubFormulario 2Control Ver Carga:Private Sub CmdVerCarga_Click()LblQ.Visible = TrueTxtQ.Visible = TrueCarga.Visible = TrueTxtQ.SetFocusEnd SubControl Retornar:Private Sub CmdRetornar_Click()Fom1.ShowUnload Form2End Sub

Edición, depuración y verificación del proyecto

Para comprobar que los resultados de la corrida del programa este bien, este debe ser ejecutado tantas veces como sea posible con diferentes datos, de forma que se pueda comprobar el correcto funcionamiento.

MSc. Ing. ADEMAR PASTEN GIRONDA16

Page 17: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Una vez que la aplicación tiene el aspecto deseado y que ejecución se realiza correctamente, se puede crear un archivo ejecutable que permita que dicha aplicación se ejecute fuera del entorno de Visual Basic. Para ello, en el menú Archivo, haga clic en la opción Generar ……….exe (Visual Basic añade automáticamente el nombre del programa al nombre del comando). Visual Basic muestra el cuadro dialogo Generar proyecto.

Luego de seleccionar una carpeta y de introducir un nombre, haga clic en el botón Aceptar. Visual Basic creará un programa ejecutable y lo almacenara en la carpeta especificada.

Para ejecutar este archivo desde Windows, localicelo en el explorador de windows y haga doble clic sobre el. También podrá crear un acceso directo para este archivo en la ventana de escritorio. Para ello, en el explorador de Windows, situé el puntero del Mouse sobre el archivo ejecutable, presione el botón derecho del Mouse y manténgalo así mientras lo arrastra hacia el escritorio de Windows. Suelte el botón del Mouse y Windows le mostrara un menú contextual.

MSc. Ing. ADEMAR PASTEN GIRONDA

Archivo

Generar ………exe

Seleccionar carpeta

Nombre:

Aceptar

17

Page 18: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

En este menú seleccione el comando Crear icono de acceso directo aquí. Windows introducirá un icono en el escritorio sobre el que podrá hacer doble clic para ejecutar el archivo ejecutable.

Documentación del proyecto

La documentación del proyecto se divide en las siguientes partes:

Documentación del proyecto fuenteDocumentación del proyecto Objeto (Manual del programa)

a) Documentación del proyecto fuente

La documentación fuente es confidencial, siendo manipulada esta información por el programador o personal con autorización, para la revisión de estos documentos.

Esto se debe a que el programa fuente pude ser modificado y mejorado permanentemente creando mejores versiones, lo que representa un ingreso económico para el programador o la empresa que lo contrato.

La documentación fuente tiene como contenido los siguientes temas:

* Introducción al proyecto* Planificación del proyecto* Especificaciones del proyecto* Base da datos (para la prueba de escritorio)* Codificación del proyecto* Edición depuración y verificación del proyecto* Disco con programa fuente

b) Documentación del proyecto Objeto

La documentación Objeto es conocido como el manual del programa y es accesible a toda persona que quiera adquirir el manual con el disquete que contiene el programa objeto, a un costo determinado.

Este manual explica como se tiene que utilizar el programa desde su prendido hasta su apagado. Para el uso de este manual, no es necesario que el usuario sepa programar, por que este programa explica todas las operaciones que efectuara cada control que muestra la pantalla.

El Manual del programa tiene como mínimo los siguientes temas: * Carátula con el nombre del manual y el nombre del autor

MSc. Ing. ADEMAR PASTEN GIRONDA18

Page 19: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

* Información sobre la Edición, derechos reservados * Contenido o Índice * Prefacio* Contenido del manual por capítulos* Apéndices* Referencias o bibliografía* Disco con programa Objeto

Mantenimiento del proyecto

El programa puede ser actualizado permanentemente dependiendo de la versión del lenguaje que se utilizan.

También se puede mejorar el programa calculando sus momentos de la viga, la flexión y otros cálculos que se aplica a una viga.

El mantenimiento es conservar y cuidar el programa vigente en el tiempo, consideramos el Software y Hardware.

Con este fin se tiene que definir un mantenimiento del programa a corto, mediano y largo plazo:

Mantenimiento a corto plazo

A medida que el programa es utilizado por el usuario, se tiene que hacer ajustes al programa, para evitar errores de cálculo. Así también efectuar mejoras al programa para facilitar su uso.

Mantenimiento a mediano plazo

El programa requiere crear una página de acceso a datos para ver datos en Microsoft Internet Explorer o usar el Editor de secuencias de comandos de Microsoft para desarrollar código para una paina Web. La mayoría de oficinas actualmente trabajan con ordenadores interconectados, que comparten archivos, programas y periféricos. En estos, casos, se dedica siempre un ordenador (servidor) a almacenar la información y a manejar los periféricos. El resto de los ordenadores (clientes) se conectan a él. De esta manera, con una red que permite compartir los recursos, se ahorra tiempo y material.

Una vez entendido el concepto de red, cabe imaginar muchas redes independientes, cada una con sus respectivos servicios, diseminados por todos los rincones del planeta. Si se conecta entre si (habitualmente a través de línea telefónica), se obtiene la red Internet.

Mantenimiento a largo plazo

MSc. Ing. ADEMAR PASTEN GIRONDA19

Page 20: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Debido a su rápida difusión y a su origen estadounidense, el mundo de los ordenadores personales (también conocidos por las siglas PC, personal Computer) han aparecido algunos ordenadores de mejor calidad, obligando al programador a actualizar su programa.

El ordenador, por lo general, esta formado por la caja, que incluye todos los dispositivos internos (disquetes, unidad lectora de CD-ROM, memoria, disco duro, microprocesador, tarjeta de sonido y tarjeta graficadora) y los periféricos (monitor, teclado ratón, micrófono, altavoces e impresora).

Algo que sorprende mucho cuando se habla de ordenadores es la gran cantidad de tareas diferentes que son capaces de hacer. Ordenar y almacenar muchos datos, corregir ortográficamente un texto, o bien permitir realizar increíbles efectos sobre fotografías.

MSc. Ing. ADEMAR PASTEN GIRONDA20

Page 21: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 3FUNDAMENTOS DE LA PROGRAMACIÓN

1. Fundamentos

Los fundamentos del lenguaje de programación utilizado en el sistema de desarrollo para Visual Basic, comprende:

Los ComentariosDeclaración de variablesTipos de datosOperadoresFunciones matemáticas, conversión de cadena, hora-fecha

2. Comentarios

Visual Basic interpreta que todo lo que esta a la derecha del carácter (´) en una línea cualquiera de programa es un comentario y no ejecuta acción alguna. Los comentarios son de mucha utilidad para poder entender el código del programa utilizado.

3. Declaración de variables

Las variables se utilizan para almacenar valores temporalmente durante la ejecución del programa.Antes de utilizar una variable, hay que declarar su tipo. Para ello se utiliza la sentencia Dim. Esta sentencia reserva espacio de memoria para la variable y permite a Visual Basic saber que tipo de datos deberá guardar en dicha variable. Por ejemplo, la siguiente sentencia crea espacio para una variable llamada nLongitud:

Dim nLongitud As Integer

4. Tipos de datos

Visual Basic dispone de varios tipos de datos, aplicables para constantes como para variables, estas pueden ser Bolean, Byte, Integer, Long, single, etc.. Estos tipos de datos disponibles de Visual Basic se pueden ver en el cuadro 1. Si una variable no es declarada, se asume que es de tipo Variant.

5. Operadores

Un operador es un símbolo o palabra que ejecuta una operación matemática o maneja la información. Estos pueden ser Aritméticos ( *, /, +,..) y relaciones lógicas (=, >,<, And….). En el cuadro 2., se muestra el conjunto de operadores que porta Visual Basic.

MSc. Ing. ADEMAR PASTEN GIRONDA21

Page 22: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Cuadro 1. Tipo de datosTipo Descripción Rango

Boolean Binario True o FalseByte Entero corto 0 a 255Integer Entero (2 bytes) % -32768 a 32767Long Entero largo (4 bytes) & -2147483648 a 2147483647Single Real simple precisión

(4 bytes)! -3.40E+38 a 3.40E+38

Double Real doble precisión (8 bytes)

# -1.79D+308 a 1.79D+308

Currency

Número con punto decimal fijo (8 bytes) También se usa para valores monetarios

@ -9.22E+14 a 9.22E+14

String Cadena de caracteres (4 bytes + 1 byte/car. hasta 64K)

$ 0 a 65500 caracteres

Date Fecha 1 de enero de 100 a 31 de diciembre de 9999. Indica también la hora desde 0:00:00 a 23:59:59.

Variant Fecha/hora; números enteros, reales, o caracteres (16 bytes + 1 byte/car, en cadenas de caracteres).

(ninguno)

F/h: como Date. Números: mismo rango que el tipo de valor almacenado.

Cuadro 2. OperadoresTipo Operación Operador

Aritmético Exponenciación Cambio de signoMultiplicación y divisiónDivisión enteraResto de una división enteraSuma y resta

^ -* , /\Mod+ , -

Concatenación RelacionalLógico

Concatenar o enlazarIgual, distinto, mayor, menor,…NegaciónAndOr inclusivaOr exclusivaEquivalencia (opuesto a Xor)Implicación

&=,<>, <, >,<=, >=NotAndOrXorEqvImp

MSc. Ing. ADEMAR PASTEN GIRONDA22

Page 23: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

6. Funciones matemáticas, conversión de cadena y fecha-hora

Visual Basic incluye varias de estas funciones que nos permiten operaciones matemáticas complejas. Las funciones de cadena permiten cambiar la apariencia y el tratamiento de las expresiones de cadena (String) y las funciones de fecha y hora opera la fecha y hora del sistema. En el cuadro 3 se muestra las funciones matemáticas en el cuadro 4., las funciones de conversión de cadena, y en el cuadro 5, las funciones de fecha y hora, junto con una descripción de su contenido.

Cuadro 3. Funciones matemáticaFunció

nDescripción

Abs ( ) Devuelve el valor absoluto de un número. Sintaxis: Abs (número)Cos ( ) Devuelve en radianes el coseno de un ángulo. Sintaxis : Cos (número)Exp ( ) Devuelve e (la base de los logaritmos naturales) elevado a una

potencia. Sintaxis: Exp(número)Int, Fix Devuelve un valor del mismo tipo que el que se pasó como parámetro

y que contiene la parte entera de un número. Sintaxis : Int (número)

Log ( ) Devuelve el logaritmo natural (base e) de un número. Sintaxis: Log (número)

Sin ( ) Devuelve en radianes el seno de un ángulo. Sintaxis: Sin (número)Sgn ( ) Devuelve el signo de un número. Sintaxis: Sgn (numero)Sqr ( ) Devuelve la raíz cuadrada de un número. Sintaxis: Sqr (número)Tan ( ) Devuelve en radianes la tangente de un ángulo. Sintaxis:

Tan (número)

Cuadro 4. Funciones de conversión de cadenaFunción Descripción

Asc ( ) Esta función devuelve el código de carácter correspondiente a la primera letra de una cadena. Sintaxis: Asc (cadena)

Chr ( ) Esta función devuelve un tipo String que contiene el carácter asociado con el código de carácter especificado. Sintaxis: Chr (códigocar)

InStr ( ) Esta función busca una cadena dentro de otra cadena y devuelve un número indicando la posición en la que se encuentra la cadena buscada; en caso de no encontrarse devuelve 0. Sintaxis: InStr( [start, ] string 1, string 2 [, compare ]

L Case ( ) Convierte una cadena a minúsculas. Sintaxis : LCase (cadena)Left ( ) Devuelve un número especificado de caracteres del lado izquierdo

de una cadena. Sintaxis: Left (string, length)Len ( ) Devuelve el número de caracteres en una cadena o el número de

bytes necesarios para almacenar una variable. Sintaxis: Len (cadena | nombrevar)

Mid ( ) Devuelve un número especificado de caracteres de una cadena . Sintaxis: Mid (string, Start [, length ] )

MSc. Ing. ADEMAR PASTEN GIRONDA23

Page 24: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Función DescripciónL Trim Rtrimy Trim

Devuelve una copia de una cadena determinada sin espacios a la izquierda (L Trim), sin espacios a la derecha (RTrim) o sin espacios ni a la derecha ni a la izquierda (Trim). Sintaxis: LTrim Cadena) , RTrim (cadena), Trim (cadena)

Right Devuelve un número especificado de caracteres del lado derecho de una cadena. Sintaxis: Right (string, lenght)

Str( ) Esta función convierte un número en cadena. Sintaxis: Str(número)

UCase( ) Convierte una cadena de caracteres a mayúsculas. Sintaxis : UCase(cadena)

Space( ) Genera una cadena de espacios. Sintaxis : Space(número)String( ) Devuelve un tipo Variant (String) que contiene una cadena de

caracteres que se repite de la longitud especificada. Sintaxis: String(number, carácter)

Val ( ) Esta función devuelve los números contenidos en una cadena como un valor numérico del tipo adecuado. Sintaxis: Val(cadena)

5. Funciones de fecha y horaFunción Descripción

Date Devuelve la fecha actual del sistema. Sintaxis: DateDateAdd( )

La función DateAdd devuelve un valor de tipo Variant con una fecha a la que se la ha agregado un intervalo de tiempo especificado. Sintaxis: DateAdd(intervalo, número, fecha)

DateDiff( )

Esta función devuelve el número de intervalos de tiempo entre dos fechas especificadas. Sintaxis: DateDiff(intervalo, fecha1, fecha2 [,1erdíasemana [, 1rasemanaaño ]])

Day La función Day devuelve un número entero entre 1 y 31, inclusive, que representa el día del mes. Sintaxis: Day(fecha)

Month( ) La función Month devuelve un número entero entre 1 y 12, inclusive, que representa el mes del año. Sintaxis: Month(fecha)

Now La función Now devuelve la fecha y la hora actuales de acuerdo a la configuración de la fecha y la hora del sistema de su PC. Sintaxis: Now

WeekDay La función WeekDay devuelve un número entero que representa el día de la semana. Sintaxis : WeekDay(fecha,[día semana])

Year Esta función devuelve un número entero que representa el año. Sintaxis:Year(fecha)

7. Caracteres ASCII

Es el código estándar de conjunto de caracteres que cualquier ordenador puede entender, usado para representar las letras latinas, en mayúsculas, minúsculas, números, puntuación, etc... La tabla básica de caracteres ASCII esta compuesta

MSc. Ing. ADEMAR PASTEN GIRONDA24

Page 25: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

por 128 caracteres incluyendo símbolos y caracteres de control. Existe una versión extendida de 256. Un operador. Se puede llamar apretando ALT y el numero

Cuadro 6 ASCII

0 43 + 86 V 129 ü 172 ¼ 215 Î1 ☺ 44 , 87 W 130 é 173 ¡ 216 Ï2 ☻ 45 - 88 X 131 â 174 « 217 ┘3 ♥ 46 . 89 Y 132 ä 175 » 218 ┌4 ♦ 47 / 90 Z 133 à 176 ░ 219 █5 ♣ 48 0 91 [ 134 å 177 ▒ 220 ▄6 ♠ 49 1 92 \ 135 ç 178 ▓ 221 7 • 50 2 93 ] 136 ê 179 │ 222 8 ◘ 51 3 94 ^ 137 ë 180 ┤ 223 ▀9 ○ 52 4 95 _ 138 è 181 224

10 ◙ 53 5 96 ` 139 ï 182 225 ß11 ♂ 54 6 97 a 140 î 183 226 12 ♀ 55 7 98 b 141 ì 184 227 13 ♪ 56 8 99 c 142 Ä 185 ╣ 228 14 ♫ 57 9 100 d 143 Å 186 ║ 229 15 ☼ 58 : 101 e 144 É 187 ╗ 230 µ16 ► 59 ; 102 f 145 æ 188 ╝ 231 17 ◄ 60 < 103 g 146 Æ 189 232 18 ↕ 61 = 104 h 147 ô 190 233 19 ‼ 62 > 105 i 148 ö 191 ┐ 234 20 ¶ 63 ? 106 j 149 ò 192 └ 235 21 § 64 @ 107 k 150 û 193 ┴ 236 22 ▬ 65 A 108 l 151 ù 194 ┬ 237 23 ↨ 66 B 109 m 152 195 ├ 238 24 ♣ 67 C 110 n 153 Ö 196 ─ 239 25 → 68 D 111 o 154 Ü 197 ┼ 240 26 → 69 E 112 p 155 ø 198 241 ±27 ← 70 F 113 q 156 199 242 28 ∟ 71 G 114 r 157 200 ╚ 243 29 ↔ 72 H 115 s 158 201 ╔ 244 30 ▲ 73 I 116 t 159 ƒ 202 ╩ 245 31 ▼ 74 J 117 u 160 á 203 ╦ 246 ÷32 75 K 118 v 161 í 204 ╠ 247 33 ! 76 L 119 w 162 ó 205 ═ 248 °34 " 77 M 120 x 163 ú 206 ╬ 249 35 # 78 N 121 y 164 ñ 207 ¤ 250 ·36 $ 79 O 122 z 165 Ñ 208 251 37 % 80 P 123 { 166 ª 209 252 ³38 & 81 Q 124 | 167 º 210 253 ²39 ' 82 R 125 } 168 211 254 ■40 ( 83 S 126 ~ 169 212 255  41 ) 84 T 127 ⌂ 170 ¬ 213 256 42 * 85 U 128 Ç 171 ½ 214 257 ☺

MSc. Ing. ADEMAR PASTEN GIRONDA25

Page 26: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Ejemplo de aplicación

Introducir los siguientes valores A, B y θ, a un triangulo (oblicuángulo) y calcular C.Los datos deben ser vistos directamente en el grafico. _______________________ C= √ A2 + B2 - 2 A*B* cos (θ) C B

θ AEn la corrida del programa las letras A, B, C se deben convertir en minúsculas y al pie del triangulo se tiene que ver la fecha de la computadora.

Diseño de pantalla

Propiedades de cada controlControl Propiedad ValorForm1Label1 Caption DECLARA…….Label1 Caption ECUACION DE UN TRIAN.....Label2 Caption ALabel3 Caption BLabel4 Caption ΘLabel5 Caption CLabel6 Caption FechaFrame1 Caption FORMULALabel7 Caption __________________________

C = √(A2 + B2 - 2*A*B*Cos (θ) )

Text1 NameText

TxtA

Text2 Name TxtB

MSc. Ing. ADEMAR PASTEN GIRONDA

0 1000 2000 3000 4000 5000 6000

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FORMULA . . . . . . . . . 4000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

DECLARACION DE VARIABLES, TIPO DATOS ….

EJEMPLO: ECUACION DE UN TRIANGULO OBLICUANGULO

A

B

θ=

CALCULAR

SALIR

C = √(A2 + B2 - 2*A*B*Cos (θ) )

C =

FECHA :

26

Page 27: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TextText3 Name

TextTxtAng

Text4 NameText

TxtC

Text5 NameText

TxtL

Command1 NameCaption

CmdCalcularCalcular

Command2 NameCaption

CmdSalirSalir

Codificación en detalle de los controles'==========================Control CalcularPrivate Sub CmdCalcular_Click()Dim A, B As DoubleA = Val(TxtA.Text)B = Val(TxtB.Text)ANG = Val(TxtAng.Text)PI = 3.1416ANG = ANG * PI / 180C = Sqr(A ^ 2 * B ^ 2 + 2 * A * B * Cos(ANG))TxtC.Text = CTxtC.Visible = TrueTxtL.Text = NowLblA.Caption = LCase(LblA.Caption)LblB.Caption = LCase(LblB.Caption)LblC.Caption = LCase(LblC.Caption)End Sub

'=============================Control SalirPrivate Sub CmdSalir_Click()EndEnd Sub

MSc. Ing. ADEMAR PASTEN GIRONDA27

Page 28: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 4 ESTRUCTURA DE DECISIÓN If..Then…Else

1. Definición estructura de decisión If

Esta estructura evalúa la condición y, si es True (verdadera), ejecuta el primer bloque de sentencias y luego salta a las sentencias que hay después de End If. Si la condición es False (falsa), ejecuta el segundo bloque de sentencias, es decir, las que hay a continuación de la palabra clave Else.

2. Algoritmo y codificación

If f v Else Then

End IfIf Condición Then [Bloque de sentencias 1]Else [Bloque de sentencias 2]End If

3. Ejemplo de aplicación

Introducir dos números A y B, si A>=B colocar el rotulo “A es mayor o igual que B”, si B>A colocar el rotulo “B es mayor que A”

Cada campo numérico solo debe permitir el ingreso de dígitos numéricosDespués de ingresar datos a un campo tiene que enfocar automáticamente otro campo. Diseño de pantalla

MSc. Ing. ADEMAR PASTEN GIRONDA

Condición

Bloque de sentencia 1 Bloque de sentencia 2

0 1000 2000 3000 4000 5000 6000

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . ESTRUCTURAS DE DECISION If.. Then… Else . . . . . . . EJEMPLO: ELECCION DE UN NUMEROMAYOR. . . . 1000 . .Ingresar: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dato A . . . . . . . . . . . . . . . . 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . .Dato B. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4000 . . . . . . . . . . . . . . . . . . . . . . . . .

SALIRCALCULAR

28

Page 29: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Propiedades de cada controlControl Propiedad ValorForm1Label1 Caption ESTRUCTURA DE DECISIONLabel2 Caption If … Then … ElseLabel3 Caption IngresarLabel2 Caption Dato ALabel3 Caption Dato BLabel4 Name

CaptionLblResultado

Text1 NameText

TxtA

Text2 NameText

TxtB

Command1 NameCaption

CmdCalcularCalcular

Command2 NameCaption

CmdSalirSalir

Codificación en detalle de los controles ==================================Control Calcular

Private Sub CmdCalcular_Click()Dim A, B As DoubleA = Val(TxtA.Text)B = Val(TxtB.Text)If A>=B Then

LblResultado.Caption = Str(A) & " es mayor o igual que " & Str(B) & " Entonces A>=B"ElseLblResultado.Caption = Str(B) & " es mayor que " & Str(A) & " Entonces B>A"

End IfEnd Sub

=====================================Control SalirPrivate Sub CmdSalir_Click()

End 'Finaliza la ejecución del programaEnd Sub

============================Control APrivate Sub TxtA_KeyPress(KeyAscii As Integer)

'Enfoca el botón de comando BIf KeyAscii = 13 ThenTxtB.SetFocusEnd If

MSc. Ing. ADEMAR PASTEN GIRONDA29

Page 30: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

'Solo permite el ingreso de dígitos en el control.If Chr(KeyAscii) < "0" Or Chr(KeyAscii) > "9" ThenBeep: KeyAscii = 0End If

End Sub

================================Control BPrivate Sub TxtB_KeyPress(KeyAscii As Integer)

'Enfoca el botón de comando CalcularIf KeyAscii = 13 ThenCmdCalcular.SetFocusEnd If

'Solo permite el ingreso de dígitos en el control.If Chr(KeyAscii) < "0" Or Chr(KeyAscii) > "9" ThenBeep: KeyAscii = 0End If

End Sub

MSc. Ing. ADEMAR PASTEN GIRONDA30

Page 31: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 5ESTRUCTURA DE DECISIÓN Select Case

1. Definición estructura de decisión Select..

Select Case ofrece posibilidad similar a la estructura If..Then..Else, pero hace que el código sea más legible cuando hay varias opciones. La estructura Select Case comprueba una única expresión, que se evalúa una sola vez al principio de la estructura. El resultado de esta comprobación se compara con los valores de cada case y, si coincide con uno de ellos, se ejecuta el bloque de sentencias asociado a ese Case.

2. Algoritmo y codificación

Select Case

Case1 Case2

Case Else End Select

Select Case expresión_prueba [Case lista expresionres1][bloque de sentencias 1][Case lista_expresiones2] [bloque de sentencias 2] ……. [Case Else[bloque de sentencias n]End Select

3. Ejemplo de aplicación

Dado un circulo donde se tiene como dato R = Radio, calcular uno de los elementos del siguiente menú: 1.- Diámetro (2*R) 2.- Área (PI*R2 ) 3.- Perímetro (2 * PI*R ) 4.- Salir Dibujar el circulo en pantalla

MSc. Ing. ADEMAR PASTEN GIRONDA

Expresion

Bloque de sentencia 1Bloque de sentencia 2

Bloque de sentencia n

31

Page 32: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Cada campo numérico solo debe permitir el ingreso de dígitos numéricosDespués de ingresar datos a un campo tiene que enfocar automáticamente otro campo. Diseño de pantalla

Propiedades de cada controlControl Propiedad ValorForm1Label1 Caption ESTRUCTURA DE DECISIONLabel2 Caption Select Case….. End SelectLabel3 Caption MENULabel4 Caption 1.- Diametro DLabel5 Caption 2.- Area ALabel6 Caption 3.- Perimetro PLabel7 Caption 4.- Salir del programaLabel8 Caption Elegir un numeroLabel9 Caption Ingresar el radioLabel10 Name

CaptionLblResultado

Frame1 Caption MENUFrame2 CalculosText1 Name

TextTxtRadio

Text2 NameText

TxtNumero

Shape1 Name Circulo1Shape2 Name Circulo2Line1 Name Linea1

MSc. Ing. ADEMAR PASTEN GIRONDA

0 1000 2000 3000 4000 5000 6000

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ESTRUCTURA DE DECISION Select Case

EJEMPLO: CALCULO DE UN CIRCULO

Ingresar el Radio:

1.- Diámetro D

2.- Área A

3.- Perimetro P

4.- Salir programa

Elegir numero

MENU

Resultado :D = 2*R P = 2*Pi*RA= Pi*(R^2) Pi = 3.1416

Calculos

32

Page 33: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Codificación en detalle de los controles'===============================TxtNumeroPrivate Sub TxtNumero_KeyPress(KeyAscii As Integer)Dim N As LongIf KeyAscii = 13 Then N = Val(TxtNumero.Text) If N >= 1 And N <= 4 Then If N = 4 Then End Else TxtRadio.SetFocus End If Else TxtNumero.Text = "" TxtNumero.SetFocus End IfEnd If

End Sub

'===============================TxtRadio

Private Sub TxtRadio_KeyPress(KeyAscii As Integer)Dim R, N1 As LongIf KeyAscii = 13 Then R = Val(TxtRadio.Text) N1 = Val(TxtNumero.Text) PI = 3.1416 Linea1.Visible=False Circulo1.Visible=false Circulo2.Visible=False Select Case N1 Case 1 Linea1.Visible=True Circulo1.Visible=True LblResultado.Caption = "Diametro =" & 2 * R Case 2 Circulo1.Visible=True LblResultado.Caption = "Area =" & PI * (R ^ 2) Case 3 Circulo2.Visible=True LblResultado.Caption = "Perimetro =" & 2 * PI * R Case Else Exit Sub End Select End If

MSc. Ing. ADEMAR PASTEN GIRONDA33

Page 34: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

'Enfoca otro botonIf KeyAscii = 13 Then TxtNumero.Text = "" TxtRadio.Text = "" TxtNumero.SetFocusEnd If

End Sub

MSc. Ing. ADEMAR PASTEN GIRONDA34

Page 35: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 6ESTRUCTURAS DE BUCLE

1. Definición estructura Bucle

Las estructuras de bucle permiten repetir la ejecución de una o más líneas de código mientras una condición sea verdadera o hasta que una condición sea verdadera. Visual Basic dispone de las siguientes estructuras de Bucle:

2. Algoritmo y codificación Do While f v

Loop

Do While conditionSentenciasLoop

Do

Loop While v f

Do Sentencias Loop While condición

For.. to.. Step Next

For contador = iniciar to finalizar [Step

incremento]Sentencias

Next [contador]3. Ejemplo de aplicación Dado un rectángulo donde se tiene conocido A y B, efectuar un programa que calcule el lado C n 2 n

MSc. Ing. ADEMAR PASTEN GIRONDA

Condición

sentencias

Condición

sentencias

sentencias

35

Page 36: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

C= ∑ B + ∑ (A2 ) A x=1 x=1 B

Donde x= 1,2,3,4,….n C Dibujar el rectángulo en pantalla y que muestre los resultadosCada campo numérico solo debe permitir el ingreso de dígitos numéricosDespués de ingresar datos a un campo tiene que enfocar automáticamente otro campo. Diseño de pantalla

Propiedades de cada controlControl Propiedad ValorForm1Label1 Caption ESTRUCTURA DE BUCLELabel2 Caption Ingrese A=Label3 Caption Ingrese B=Label4 Caption Ingrese n=Label5 Caption A=Label6 Caption B=Label7 Caption C=Label8 Name

CaptionLblA

Label9 NameCaption

LblB

Label10 NameCaption

LblC

Label11 Name LblResultado

MSc. Ing. ADEMAR PASTEN GIRONDA

0 1000 2000 3000 4000 5000 6000

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ESTRUCTURA DE BUCLE: Do..While..Loop, For..Next

EJEMPLO: CALCULO DE UN CUBO DE LADO C

Ingrese nn

0 Calculo por Do….Loop while

0 Calculo por Do While….. Loop

0 Calculo por For ……Next

0 Salir programa

MENU

Ingrese B:=

C= SQR((Sumatoria B)^2)+(Sumatoria(a^2)))

Formula

Ingrese A=

C = ?

36

Page 37: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Label12 Caption C=SQR(((SumatoriaA)^2)+(Sumatoria (B^2)) ; Para x=1,2,3…n

Text1 NameText

TxtA

Text2 NameText

TxtB

Text3 NameText

TxtN

Frame1 Caption Elija un Bucle para calcularFrame2 Caption FormulaOption1 Name

CaptionBoton1Calculo por Do…..Loop While

Option2 NameCaption

Boton2Calculo por Do While…….Loop

Option3 NameCaption

Boton3Calculo por For…….Next

Option4 NameCaption

Boton4Salir

Codificación en detalle de los controles'Boton1==============================ClikPrivate Sub Boton1_Click()Dim A, B, C As DoubleDim N, X As IntegerDim SumaA, SumaB As DoubleA = Val(TxtA.Text)B = Val(TxtB.Text)N = Val(TxtN.Text)X = 0: C = 0SumaA = 0: SumaB = 0Do SumaA = SumaA + A SumaB = SumaB + (B ^ 2) X = X + 1Loop While X <> NC = Sqr(((SumaA) ^ 2) + (SumaB))LblC.Caption = Format(C, "###,##00")End Sub

'Boton2================================ClikPrivate Sub Boton2_Click()Dim A, B, C As DoubleDim N, X As IntegerDim SumaA, SumaB As DoubleA = Val(TxtA.Text)

MSc. Ing. ADEMAR PASTEN GIRONDA37

Page 38: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

B = Val(TxtB.Text)N = Val(TxtN.Text)X = 0: C = 0SumaA = 0: SumaB = 0Do While X <> N SumaA = SumaA + A SumaB = SumaB + (B ^ 2) X = X + 1LoopC = Sqr(((SumaA) ^ 2) + (SumaB))LblC.Caption = Format(C, "###,##00")End Sub

'Boton3================================ClikPrivate Sub Boton3_Click()Dim A, B, C As DoubleDim N, X As IntegerDim SumaA, SumaB As DoubleA = Val(TxtA.Text)B = Val(TxtB.Text)N = Val(TxtN.Text)C = 0SumaA = 0: SumaB = 0For X = 1 To N Step 1 SumaA = SumaA + A SumaB = SumaB + (B ^ 2)NextC = Sqr(((SumaA) ^ 2) + (SumaB))LblC.Caption = Format(C, "###,##00")End Sub

'Boton4======================================ClikPrivate Sub Boton4_Click()EndEnd Sub

'TxtA=========================================clikPrivate Sub TxtA_KeyPress(KeyAscii As Integer)LblA.Caption = Val(TxtA)'Mueve el puntero a otro cuadroIf KeyAscii = 13 ThenTxtB.SetFocusEnd IfEnd Sub

'TxtB======================================ClikPrivate Sub TxtB_KeyPress(KeyAscii As Integer)

MSc. Ing. ADEMAR PASTEN GIRONDA38

Page 39: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

LblB.Caption = Val(TxtB)'Mueve el puntero a otro cuadroIf KeyAscii = 13 ThenTxtN.SetFocusEnd IfEnd Sub

'TxtN========================================ClikPrivate Sub TxtN_KeyPress(KeyAscii As Integer)Dim A, B As DoubleA = Val(TxtA.Text)B = Val(TxtB.Text)If (A > 0 And B > 0) Then LblRotulo.Caption = "Puede calcular" Else LblRotulo.Caption = "No puede calcular A,B<0"End IfEnd Sub

MSc. Ing. ADEMAR PASTEN GIRONDA39

Page 40: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 7MATRICES - ARRAYS

1. Definición matrices - Array

Un array es una estructura de datos en la que se almacena una serie de elementos del mismo tipo. Dicho de otro modo, una array es una lista con número finito de n elementos del mismo tipo que se caracteriza por almacenar los elementos del array en posiciones de memoria continua, tener un único nombre de variable que representa a todos los elementos, y éstos a su vez se diferencian por un índice o subíndice.

(i , j) 1 2 … .n 12 A(2,2

)…n

Un array debe declararse con la sentencia Dim seguido por el nombre del array y, entre paréntesis, el valor máximo del índice que emplearemos para acceder a cada elemento

Dim nombre variable ( inicio To fin , inicio To fin ) As Tipo variable Fila Columna

2. Array unidimensionalUn array de una dimensión (unidimensional) es un tipo de datos estructurado compuesto de un número fijo de elementos. Los elementos de array se almacenan en posiciones contiguas de memoria, a cada una de las cuales se puede acceder directamente. A[i] B[i] C[i]

.a1 a2 a3 ; b1 b2 b3 ; c1 c2 c3

Dim A(1 To 3), B(1 To 3), C(1 To 3) As Integer 3. Array Bidimensionales

Un array bidimensional es un array con dos índices. Para localizar o almacenar un valor en el array se deben especificar dos posiciones (dos subíndices), uno para la fila y otro para la columna. A[i,j] B[i,j] C[i,j]

.a11 a12 a13 b11 b12 b13 c11 c12 c13

a21 a22 a23 ; b21 b22 b23 ; c21 c22 c23 a31 a32 a33 b31 b32 b33 c31 c32 c33

MSc. Ing. ADEMAR PASTEN GIRONDA40

Page 41: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Dim A(1 To 3, 1 To 3), B(1 To 3, 1 To 3), C(1 To 3, 1 To 3) As Integer

4. Ejemplo de aplicación

Sumar dos matrices A + B, y guardar en una matriz C. .a11 a12 a13 b11 b12 b13 c11 c12 c13

a21 a22 a23 + b21 b22 b23 = c21 c22 c23 a31 a32 a33 b31 b32 b33 c31 c32 c33 Donde: . c11 = a11 + b11 c12 = a12 + b12 c13 = a13 + b13

c21 = a21 + b21 c22 = a22 + b22 c23 = a23 + b23

c31 = a31 + b31 c32 = a32 + b32 c33 = a33 + b33

Diseño de pantalla

Codificación del entornoControl Propiedad ValorForm1Label1 Caption MATRICES = ARRAYSLabel2 Caption Orden MatrizLabel3 Caption Matriz ALabel4 Caption Matriz BLabel5 Caption Matriz CLabel6 Caption Calcular>Text1 Name

TextTxtN

Picture1 NameText

Command1 NameText

Cmdsalir

MSc. Ing. ADEMAR PASTEN GIRONDA

0 1000 2000 3000 4000 5000 6000

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

MATRICES – ARRAYS

Matriz A + Matriz B = Matriz C

1 1 1 1 2 2 2 2 3 3 3 3 1 1 1 1 2 2 2 2 3 3 3 3 1 1 1 1 2 2 2 2 3 3 3 3 1 1 1 1 2 2 2 2 3 3 3 3

SALIR

Oden:EJEMPLO: CALCULO SUMA DE MATRICES

41

Page 42: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Codificación del programa'CmdSalir===================================ClickPrivate Sub CmdSalir_Click()EndEnd Sub

'Picture1==================================ClikPrivate Sub Picture1_Click()Dim A(1 To 30, 1 To 30), B(1 To 30, 1 To 30), C(1 To 30, 1 To 30) As IntegerDim i, j, CodenadaX, CordenadaY As Integer

N = Val(TxtN.Text)

For i = 1 To NFor j = 1 To NA(i, j) = InputBox("Introdusca Matriz A(" & i & "," & j & ")", "lectura")CordenadaX = j * 300CordenadaY = i * 300Picture1.CurrentX = CordenadaXPicture1.CurrentY = CordenadaYPicture1.Print A(i, j)NextNext

For i = 1 To NFor j = 1 To NB(i, j) = InputBox("Introdusca Matriz B(" & i & "," & j & ")", "lectura")CordenadaX = (j * 300) + 1600CordenadaY = i * 300Picture1.CurrentX = CordenadaXPicture1.CurrentY = CordenadaYPicture1.Print B(i, j)NextNext

For i = 1 To NFor j = 1 To NC(i, j) = (1 * A(i, j)) + (1 * B(i, j))NextNext

For i = 1 To NFor j = 1 To NCordenadaX = (j * 300) + 3200CordenadaY = i * 300

MSc. Ing. ADEMAR PASTEN GIRONDA42

Page 43: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Picture1.CurrentX = CordenadaXPicture1.CurrentY = CordenadaYPicture1.Print C(i, j)NextNextEnd Sub

MSc. Ing. ADEMAR PASTEN GIRONDA43

Page 44: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 8PROCEDIMIENTO: FUNCTION - SUB

1. Definición procedimiento - funciones

Cuando varios procedimientos conducidos por sucesos necesiten ejecutar una misma rutina, la mejor forma de proceder es colocar el código de esta rutina en un procedimiento general que será invocado desde cada uno de estos procedimientos conducidos por sucesos. De esta manera se evita duplicar código. Un procedimiento general debe ser conciso y debe ejecutar una tarea única. De esta manera, el código del programa será estructurado y fácil de mantener. Un procedimiento general puede escribirse como procedimiento Sub o como procedimiento Función.

2. Algoritmo y codificación

MSc. Ing. ADEMAR PASTEN GIRONDA

INICIO

Sentencias

Nombre Sub

Sentencias

Nombre= nombre función

FIN

Procedimiento Sub

Sentencias

Fin Sub

Procedimiento Función

Sentencias

Fin Function

Sentencias

Nombre = expresión

Sentencias

44

Page 45: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Private……..[sentencias]………. Procedimiento Sub[Nombre Sub] ------------- Sub nombre ( )[sentencias] . [sentencias]….. . End Sub ….. ….. Procedimiento Function:[nombre= nombre funcion]-- Fuction nombre ([Argumento]) As [tipo][sentencias] . [sentencias]….. . [nombre=expresión]End Sub. . [sentencias] : End Fuction

3. Ejemplo de aplicación

Ingrese dos números X, Y y calcular las siguientes funciones: Si: f(x) > 0 calcular g(x) = [ ∑X2 + [ ∑Y]2 ] + 1 F(x) = X * Y Si: f(x) = 0 calcular g(x) = [ ∑X2 * [ ∑Y]2 ] + 1 Si: f(x) < 0 calcular g(x) = [ ∑X2 / [ ∑Y]2 ] + 1 Para la sumatoria de i= 1,2,3,4,….N Calcular Z = f(x) + g(x) Diseño de pantalla

Codificación del entornoControl Propiedad ValorForm1Label1 Caption PROCEDIMIENTO FUNSION -SUBLabel2 Caption Ingrese X:Label3 Caption Ingres Y:Label4 Caption Ingres N:

MSc. Ing. ADEMAR PASTEN GIRONDA

0 1000 2000 3000 4000 5000 6000

0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

PROCEDIMIENTO: FUNCTION - SUB

DATOS

Ingres X

Ingres YIngrese N CALCULAR

FX =

GX =

RESULTADOS

Formulas: Fx = x * y Si : Fx > o ; Gx = (Sum X² + ( Sum Y² ) + 1 Fx = o ; Gx = (Sum X² * ( Sum Y² ) + 1 Fx < o ; Gx = (Sum X² / ( Sum Y²) + 1 Z = (Fx + Gx) i = 1,2,3,4….N

Z =SALIR

EJEMPLO: CALCULO DE Z= F(x) + G(x)

45

Page 46: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Label5 Caption FX =Label6 Caption GX =Label7 Caption Z =Frame1 Caption Formulas:Label8 Caption Fx= X * YLabel9 Caption Fx>0 Gx = (suma X^2+(SumtY)^2)+1Label10 Caption Fx>0 Gx = (suma X^2*(SumtY)^2)+1Label11 Caption Fx>0 Gx = (suma X^2/(SumtY)^2)+1Label12 Caption Z= (Fx + Gx) + 1Label13 Caption I= 1,2,3,4,……NText1 Name TxtXText2 Name TxtYText3 Name TxtNText4 Name TxtFXText5 Name TxtGXText6 Name TxtZCommand1 Name

TextCmdCalcular

Command1 NameText

CmdSalir

Codificación del programa'CmdCalcular==============================ClicPrivate Sub CmdCalcular_Click()Dim X, Y As DoubleDim Fx, Gx, Gxx, Z As Double

X = Val(TxtX.Text)Y = Val(TxtY.Text)

Fx = X * YTxtFX.Text = FxIf Fx > 0 Then GX1If Fx = 0 Then GX2If Fx < 0 Then GX3

Gxx = Val(TxtGX.Text)

TxtZ.Text = Fx + Gxx

End Sub

'GX1======================================ClicSub GX1() Dim X, SX, Gx As Double

MSc. Ing. ADEMAR PASTEN GIRONDA46

Page 47: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Dim Y, SY As Double X = Val(TxtX.Text) Y = Val(TxtY.Text) SX = SX1(X) SY = SY1(Y) Gx = (SX + (SY ^ 2)) + 1 TxtGX.Text = GxEnd Sub

'GX2======================================ClicSub GX2() Dim X, SX, Gx As Double Dim Y, SY As Double X = Val(TxtX.Text) Y = Val(TxtY.Text) SX = SX1(X) SY = SY1(Y) Gx = (SX * (SY ^ 2)) + 1 TxtGX.Text = GxEnd Sub

'GX·======================================ClicSub GX3() Dim X, SX, Gx As Double Dim Y, SY As Double X = Val(TxtX.Text) Y = Val(TxtY.Text) SX = SX1(X) SY = SY1(Y) Gx = (SX / (SY ^ 2)) + 1 TxtGX.Text = GxEnd Sub

'SX1======================================ClicFunction SX1(X1) As Double Dim i, N As Long N = Val(TxtN.Text) For i = 1 To N SX1 = SX1 + (X1 ^ 2) NextEnd Function

'SY1======================================ClicFunction SY1(Y1) As Double Dim i, N As Long N = Val(TxtN.Text) For i = 1 To N

MSc. Ing. ADEMAR PASTEN GIRONDA47

Page 48: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

SY1 = SY1 + Y1 NextEnd Function

'CmdSalir=================================ClicPrivate Sub CmdSalir_Click()EndEnd Sub

'TxtN=====================================ClicPrivate Sub TxtN_KeyPress(KeyAscii As Integer)' Enfoca otro botonIf KeyAscii = 13 ThenCmdCalcular.SetFocusEnd IfEnd Sub

'TxtX=====================================ClicPrivate Sub TxtX_KeyPress(KeyAscii As Integer)' Enfoca otro botonIf KeyAscii = 13 ThenTxtY.SetFocusEnd IfEnd Sub

'TxtY=====================================ClicPrivate Sub TxtY_KeyPress(KeyAscii As Integer)' Enfoca otro botonIf KeyAscii = 13 ThenTxtN.SetFocusEnd IfEnd Sub

MSc. Ing. ADEMAR PASTEN GIRONDA48

Page 49: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

TEMA 9BASE DE DATOS Y ARCHIVOS

1. Base de datos

La Base de datos es cualquier conjunto de datos organizados para su almacenamiento en la memoria de un ordenador o computadora, diseñado para facilitar su mantenimiento y acceso de una forma estándar.

En Visual Basic un archivo es un conjunto de tablas, estas tablas son un conjunto de registros, y estos registros son un conjunto de campos que pueden ser de diferentes tipos de variables (enteros, reales, alfabéticos, etc..)

Contenido de la Base de datos:

TABLA n          TABLA 3            

TABLA 2              TABLA 1                  Campo 1 Campo 2 Campo 3 ……. Campo n      Registro 1                                 Registro 2                                 Registro 3                                 

2. Método para el desplazamiento del puntero

El control Data presenta un conjunto de métodos que permite el desplazamiento en la tabla los cuales pasamos a describir brevemente:

MoveFirst Mueve el puntero al primer registroMoveNext Mueve el puntero al siguiente registroMovePrevious: Mueve el puntero al registro anteriorMoveLast: Mueve el puntero al último registro

Estos controles se muestran en los botones Control Data:

Primero Anterior Siguiente UltimoMoveFirst MovePrevious MoveNext MoveLast

MSc. Ing. ADEMAR PASTEN GIRONDA

< < Data1 > >

49

Page 50: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

3. Método de mantenimiento

a) RecordSet.Addnew:

Addnew nos permite crear un nuevo registro para un objeto RecorSet de tipo Table o Dynaset, con esta opción ingresaremos un espacio en blanco al final de nuestra tabla activa, con lo cual nos permitirá ingresar datos para su posterior almacenamiento.

Utilice el método Addnew para agregar o crear un nuevo registro en nuestro objeto RecordSet.. Este método establece los campos a los valores predeterminados y si no se especifican valores predeterminados, establece la campos a Null ( los valores predeterminado especificados para el recorSet tipo Table)

b) RecordSet.Update (tipo, obligar):

Update nos permitirá guardar el contenido del bufer de copia en un objeto RecorSet de tipo Dynaset o table especifico.

Utilice el método Update para guardar el registro activo y los cambios que se hayan efectuado en el.

c) RecordSet.edit

Edit nos permite Editar el contenido de un registro cualquiera de nuestra Tabla que pertenece a nuestra Base de datos, modificada el registro activo de un objeto RecorSet. Al bufer de copia para una posterior edición.

Una vez que ha sido utilizado el método edit, los cambios que usted haya realizado en los campos del registro que usted creyo conveniente, son almacenados en el búfer de copia. Después de generar todos los cambios deseados, utilizaremos el método Update para actualizar la información de nuestra tabla.

d) RecorSet.delete

Nos permite eliminar registros no deseados o poco inservibles en nuestra base de datos, eliminara el registro activo de nuestro objeto RecordSet o un miembro de una colección, como podría ser una tabla almacenada de una Base de datos, un campo almacenado de una tabla independiente y un índice de una tabla.

MSc. Ing. ADEMAR PASTEN GIRONDA50

Page 51: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

4. Ejemplo de aplicación

Desarrollar una aplicación que nos permita presentar la información almacenada en la Tabla1 en la Base de datos Base1. La Tabla1 tiene como campos A1 y B1

Pasos para generar una base de datosa) Plantear el problemab) Generar los campos, tablas, archivos en Accesc) Diseñar la pantalla o formulariod) Colocar propiedades a los controlese) Codificar los controles

a) Plantear el problema

Diseñamos nuestra tabla de la siguiente manera:

 TABLA  

 TABLA  

TABLA1    A1 B1    

 100 10      200  20     300  30     400  40     500  50     600  60     700  70     800  80     900  90     1000  100     2000  200     

Los Command para mantenimiento son los siguientes:

Para gravar crearemos dos Command Nuevo Grabar

Para borrar crearemos un CommandEliminar

Para cambiar crearemos dos Command Editar Grabar

MSc. Ing. ADEMAR PASTEN GIRONDA51

Page 52: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

b) Generar los campos , tablas, archivos en Acces

* En el menú principal del Visual Basic digitar Complemento y luego Administrador Visual datos

Nos presentara una nueva ventana donde digitamos Archivo , Nuevo, Microsoft ACCES y MD de la version 2.

MSc. Ing. ADEMAR PASTEN GIRONDA52

Page 53: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Presentara una ventana, donde seleccionamos la base de datos del Microsoft Acces que desea crear dandole el nombre

Cuando se de el nombre genera una nueva ventana VISDATA

MSc. Ing. ADEMAR PASTEN GIRONDA53

Page 54: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Con el cursor o puntero se coloca en Propiedades y se digita el boton derecho del mause que nos genera un menú, digitamos Nueva tabla

Nos muestra una ventana denominada estructura de tabla donde colocamos el nombre de la tabla, y datos que nos solicitan

MSc. Ing. ADEMAR PASTEN GIRONDA54

Page 55: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Luego de llenar los datos podemos agregar campos digitando en Agregar Campos

Luego de llenar los campos digitamos generar tabla

MSc. Ing. ADEMAR PASTEN GIRONDA55

Page 56: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Con lo cual se temino de de generar la base de datos

c) Diseñar la pantalla o formulario

Diseñamos el formulario 1

MSc. Ing. ADEMAR PASTEN GIRONDA56

Page 57: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Diseñamos el formulario 2

Como en el cuadro de herramientas no se tiene el icono MSFlexFGrid, se puede incrementar, colocando el puntero en la ventana de herramientas y pulsando el boton derecho del maus.

Nos mostrara el siguiente menú

ComponentesAgregar FichaAcopleOcultar

Del cual elegimos Componentes que nos mostrara la siguiente pantalla:

En esta ventana se marca el componente Microsoft FlexGrid Control 6.0 (sps) y se digita aceptar.

Esto nos muestra en la ventana de herramientas el icono MSflexGrid que nos permitira diseñar el siguiente formulario:

MSc. Ing. ADEMAR PASTEN GIRONDA57

Page 58: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

d) Colocar propiedades a los controles

Control Propiedad ValorFormulario1Command1 Name CmdEditar

Caption EditarCommand1 Name CmdEliminar

Caption EliminarCommand1 Name CmdGrabar

Caption GrabarCommand1 Name CmdNuevo

Caption NuevoCommand1 Name CmdSalir

Caption SalirCommand1 Name CmdVerlistas

Caption VerListaData 1 Name Data1

DataBaseName C:…….BASE1Record Source Tabla1

Text1 Name TxtAData Source Data1Data File A

Text2 Name TxtBData Source Data1

MSc. Ing. ADEMAR PASTEN GIRONDA58

Page 59: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

Data File BFormulario 2MSFlexGrid1 Name MSFLexGrid1

Data Source Data1File Rows 1File Cols 0Rous 10Cols 2

Command1 Name CmdRetornoCaption Retorno

e) Codificar los controles

Formulario1'-------------------------------------------------------Private Sub CmdEditar_Click()TxtB.SetFocusData1.Recordset.EditCmdGrabar.Enabled = TrueData1.Recordset.UpdateCmdNuevo.Enabled = FalseCmdEliminar.Enabled = FalseEnd Sub'-------------------------------------------------------Private Sub CmdEliminar_Click()If MsgBox("¿Desea eliminar el registro actual?", 4, "Eliminar") = 6 ThenData1.Recordset.DeleteEnd IfData1.Recordset.MoveFirst

End Sub'-------------------------------------------------------Private Sub CmdGrabar_Click()Dim grabar As Integer

MSc. Ing. ADEMAR PASTEN GIRONDA59

Page 60: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

grabar = MsgBox("¿Desea guardar los ultimos cambios efectuados?", vbYesNo + vbInformation, "Guardando los cambios")If grabar = vbYes ThenData1.RefreshCmdGrabar.Enabled = FalseCmdEliminar.Enabled = TrueCmdEditar.Enabled = TrueCmdNuevo.Enabled = TrueEnd If

If grabar = vbNo ThenCmdGrabar.SetFocusCmdGrabar.Enabled = FalseCmdEliminar.Enabled = TrueCmdEditar.Enabled = TrueCmdNuevo.Enabled = TrueEnd If

CmdGrabar.Enabled = False

End Sub

'-------------------------------------------------------Private Sub CmdNuevo_Click()Data1.Recordset.AddNewTxtA.SetFocusCmdGrabar.Enabled = TrueCmdEliminar.Enabled = FalseCmdEditar.Enabled = FalseEnd Sub'-------------------------------------------------------Private Sub CmdSalir_Click()EndEnd Sub'-------------------------------------------------------Private Sub CmdVerlista_Click()Form2.ShowUnload Form1End Sub

'-------------------------------------------------------Private Sub TxtA_KeyPress(KeyAscii As Integer)If KeyAscii = 13 ThenTxtB.SetFocusEnd If

MSc. Ing. ADEMAR PASTEN GIRONDA60

Page 61: Guia de Visual Basic

TEXTO: LABORATORIO DE VISUAL BASIC .

End Sub

Formulario 2

'-----------------------------------------------------Private Sub CmsRetorno_Click()Form1.ShowUnload Form2End Sub'-----------------------------------------------------

BIBLIOGRAFIA:

Aplicaciones en Visual Basic 6.0; Freddy Suárez Barzola; Editorial Serví libros; Edición 1ra; 2003.

Programación en Visual Basic 6; Rubén Luna Ramírez; Editorial Marco; Edición 2da; 2002

Programación paso a paso en Visual Basic 6.0; Rubén Luna Ramírez; Editorial Macro; Edición 1ra; 2000.

Aprendiendo Visual Basic 5 en 24 hrs.; Grez Perry; Editorial Pentice-Hall; Edición 1ra; 1998.

Problemas de metodología de la programación; Luís Joyanes Aguilar; Editorial McGraw-Hill; edición 1ra; 1996

Microsoft Visual Basic 4.0; Michael Halvorson; Editorial McGraw-Hill; Edition 1ra; 1996.

MSc. Ing. ADEMAR PASTEN GIRONDA61