UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIVERSIDAD ESTATAL DE BOLÍVAR MÓDULO DE PROGRAMACIÓN CAEDIS: RIOBAMBA TUTOR: LIC. MARCELO BAÑO Quinto Ciclo Informática Educativa Ing. Daniel Rosillo Solano 1 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo LIC. MARCELO BAÑO 2 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo GENERALIDADES. El presente modulo pretende dar una visión general del manejo de herramientas visuales para el desarrollo de Software, siendo objeto de estudio del mismo el lenguaje de programación Visual Basic en su Versión 6.0 de Microsoft. Durante el desarrollo del módulo se impartirán clases teórico prácticas, con los respectivos ejercicios en clase referentes al tema, y la tarea que deberá ser presentada en la siguiente clase, la cuál será calificada. También se impartirán las bases de cómo empezar a desarrollar software y alguna información más de interés necesarias antes de comenzar a programar en este lenguaje de programación. Este curso no se enseña las bases de programación sino el lenguaje específico de Visual Basic. No vamos a explicar que son variables, ni punteros, ni que acciones realiza un ordenador para llevar a cabo cierto código, ni siquiera explicaremos los algoritmos básicos de búsqueda u ordenación. Eso no quiere decir que si no sabe programar en otro lenguaje no pueda seguir con facilidad este curso, sino simplemente que a veces tendrá que realizar algún que otro acto de fe. De todas formas, siempre es recomendable tener una buena base. Ing. Daniel Rosillo Solano 3 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo INTRODUCCIÓN Existen muchas formas de aprender pero la más efectiva de todas es aprender con práctica y ejemplos. Por eso, en este módulo no nos vamos a ir por las ramas y nos vamos a centrar en conseguir algo tangible, de hecho, si sigue con atención la materia impartida en unos minutos será capaz de crear su primera aplicación pequeña para Windows. Para que este módulo sea útil, es necesario que al final de cada clase se pruebe todo el código que se trabaje durante la misma y que se realicen propias pruebas en casa para reforzar lo aprendido. Al final de casi todos los temas se incluyen ejercicios que debe realizar para asegurarse que ha asimilado todo lo que se haya expuesto. Aunque durante todo el módulo usaremos la versión 6, todo lo que se explique aquí puede ser llevado casi con total seguridad a versiones anteriores, aunque no siempre ocurre así. LIC. MARCELO BAÑO 4 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo OBJETIVOS DEL MODULO • Estudiar el entorno de programación del Visual Basic 6.0 • Estudiar y aplicar la programación en lenguaje Basic con la herramienta Visual Basic 6.0 • Utilizar de manera correcta los controles y objetos que brinda el Visual Basic. • Dar una pequeña introducción a las bases de datos u su uso con Visual Basic. Ing. Daniel Rosillo Solano 5 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIDAD # 1 Introducción al Lenguaje Basic y entorno de programación del Visual Basic 6.0 Antecedentes del Visual Basic. Características Generales del Visual Basic. Análisis Creación de un interfaz De Usuario Definición de las propiedades de los controles Generación del código asociado a los eventos que ocurran a estos controles Generación del código del programa Variables Definición de Variables Entorno de las Variables Tipos de datos de las Variables. Lenguaje Basic Sentencias Condicionales Sentencias de Bucle Funciones de Cadenas Funciones con Números Operadores Lógicos Otras Funciones Entorno de trabajo del Visual Basic 6.0. Barra de Herramientas Cuadro de Herramientas Ventana de Propiedades Ventana de Proyectos Editor de Código UNIDAD # 2 Objetos del Visual Basic. Propiedades Eventos Métodos Convención para nombrar Objetos en Visual Basic El Formulario Propiedades del Formulario Establecer Propiedades y eventos del Formulario Utilización de Métodos Controles mas elementales del Visual Basic Command Button Etiqueta Caja de Texto Frame Check Button y Option Button List Box y Combo Box LIC. MARCELO BAÑO 6 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIDAD # 3 Menús, Cuadros de Dialogo y Otros Controles Menús Cuadros de Diálogo Otro Controles HscrollBar y VscrollBar Temporizador Shape Line UNIDAD # 4 Procedimientos Creación de Procedimientos Procedimientos Sub Llamadas a procedimientos Paso de parámetros Ámbito de Acción PRE –TEST Se realizará un test inicial a los estudiantes para medir su destreza en cuanto a programación, conocimientos de estructuras de control y bucles, y otros fundamentos básicos de informática. La evaluación estará orientada en los siguientes puntos: • Conoce las estructuras generales de programación? (if/else, for, etc.) • Conoce la sintaxis del lenguaje Basic? • Conoce los objetos que presenta el Visual Basic? • Conoce la forma de utilización del Visual Basic? • Conoce acerca de vectores, matrices y otras estructuras de programación? Ing. Daniel Rosillo Solano 7 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Unidad # 1 TEMA: Introducción al Lenguaje Basic y entorno de programación del Visual Basic 6.0 OBJETIVOS • Describir el lenguaje Basic y su forma de programación • Detallar la sintaxis y estructura de un programa en Basic. • Estudiar el entorno de programación del Microsoft Visual Basic 6.0. • Realizar ejercicios prácticos referentes a la unidad. DESARROLLO. • Antecedentes del Visual Basic. El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code ) nació en el año 1964 como una herramienta destinado a principiantes, buscando una forma sencilla de realizar programas, empleando un lenguaje casi igual al usado en la vida ordinaria ( en inglés), y con instrucciones muy sencillas y escasas. Teniendo en cuenta el año de su nacimiento, este lenguaje cubría casi todas las necesidades para la ejecución de programas. Téngase en cuenta que las máquinas existentes en aquella época estaban estrenando los transistores como elementos de conmutación, los ciclos de trabajo llegaban a la impensable cifra de 10.000 por segundo y la memoria no pasaba de unos pocos k´s en toroides de ferrita. Los autores fueron los científicos John G. Kemeny (Budapest, 1926 – USA 1992) y Thomas E. Kurtz (Illinois 1928) Su trabajo original se llamó True BASIC. La evolución del BASIC por los años 70 fue escasa, dado el auge que tomaron en aquella época lenguajes de alto nivel como el FORTRAN y el COBOL. En 1978 se definió una norma para unificar los Basics existentes creándose la normativa BASIC STANDARD LIC. MARCELO BAÑO 8 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Con la popularización del PC, salieron varias versiones del BASIC que funcionaban en este tipo de ordenadores (Versiones BASICA, GW-BASIC), pero todas estas versiones del BASIC no hicieron otra cosa que terminar de rematar este lenguaje. Los programadores profesionales no llegaron a utilizarlo, habida cuenta de las desventajas de este lenguaje respecto a otras herramientas (PASCAL, C, CLIPPER). El BASIC con estas versiones para PC llegó incluso a perder crédito entre los profesionales de la informática. Las razones para ello eran obvias: - No era un lenguaje estructurado. - No existían herramientas de compilación fiables. - No disponía de herramientas de intercambio de información. - No tenía librerías. - No se podía acceder al interior de la máquina. - Un largo etcétera de desventajas respecto a otros lenguajes de programación. • Características Generales del Visual Basic. Visual-Basic es una herramienta de diseño de aplicaciones para Windows, en la que estas se desarrollan en una gran parte a partir del diseño de una interface gráfica. En una aplicación Visual Basic, el programa está formado por una parte de código puro, y otras partes asociadas a los objetos que forman la interface gráfica. Es por tanto un termino medio entre la programación tradicional, formada por una sucesión lineal de código estructurado, y la programación orientada a objetos. Combina ambas tendencias. Ya que no podemos decir que VB pertenezca por completo a uno de esos dos tipos de programación, debemos inventar una palabra que la defina : PROGRAMACION VISUAL. La creación de un programa bajo Visual Basic lleva los siguientes pasos: Análisis . Es el studio de las necesidades que han dado origen a la creación de ese programa. Es lo que se se llama Análisis de la aplicación. Es la primera fase que debe tener siempre un programa y es tambien la más olvidada entre los programadores noveles. Una aplicación no se inicia con el teclado, sino sobre un papel. Ing. Daniel Rosillo Solano 9 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo - Creación de un interface de usuario. Este interface será la principal vía de comunicación hombre máquina, tanto para salida de datos como para entrada. Será necesario partir de una o varias ventanas - Formularios - a las que le iremos añadiendo los controles necesarios. - Definición de las propiedades de los controles – Se dará la forma, posición, y todas las características necesarias a los controles que hayamos colocado en ese formulario. Estas propiedades determinarán la forma estática de los controles, es decir, como son los controles y para qué sirven. - Generación del código asociado a los eventos que ocurran a estos controles. A la respuesta a estos eventos (click, doble click, una tecla pulsada, etc.) le llamamos Procedimiento, y deberá generarse de acuerdo a las necesidades del programa. - Generación del código del programa. Un programa puede hacerse solamente con la programación de los distintos procedimientos que acompañan a cada objeto. Sin embargo, VB ofrece la posibilidad de establecer un código de programa separado de estos eventos. Este código puede introducirse en unos bloques llamados Módulos, en otros bloques llamados Funciones, y otros llamados Procedimientos. Estos Procedimientos no responden a un evento acaecido a un control o formulario, sino que responden a un evento producido durante la ejecución del programa. • Variables o Definición de Variables Una variable es una ubicación temporal de memoria donde se almacenan datos que interesan retener durante la ejecución de la aplicación. Las variables pueden contener texto, valores numéricos, fechas o propiedades de cierto objeto. Es una forma de dar nombre a una porción de datos con la que deseamos trabajar en nuestro programa. Las variables se caracterizan por un nombre que las identifica y por un tipo de datos, que establece el conjunto de valores posibles que pueden contener y operaciones en las que puede participar. El valor de una variable puede cambiar a lo largo de la vida de ésta. Es necesario declarar las variables para poder utilizarlas en el programa. En Visual LIC. MARCELO BAÑO 10 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Basic no es obligatorio pero si recomendable. Al declarar una variable se reserva memoria para ella y se indica qué valores puede contener a través de su tipo de datos. Para establecer la declaración de una variable antes de ser utilizada en el código, puedes hacerlo en la ficha entorno del cuadro de diálogo opciones. El uso de las variables puede hacer que la aplicación sea más rápida, por ejemplo, si usas muchas veces un determinado valor, es aconsejable guardarlo en una variable y utilizarla cuando se necesite que tener que volver a escribir código cada vez que quieras llamarla. Es más rápido el acceso a las variables que a una propiedad de un objeto, por lo que también es aconsejable guardar el valor de una propiedad en una variable. La forma de declara una variable es a través de la instrucción Dim. En la línea se declara la variable de nombre Variable y al mismo tiempo Visual Basic guarda espacio en memoria para poder utilizarla. o Entorno de las Variables Denominamos ámbito de una variable a las partes del programa donde esa variable está declarada. Para entenderlo mejor, veamos someramente la forma de un programa desarrollado en VB. Un programa VB tiene uno o varios formularios. Cada formulario tiene varios controles. Tanto el formulario como cada uno de sus controles tienen una parte del programa, justamente la parte relacionada con cada uno de los eventos que pueden suceder bien al formulario o a los controles. A estas partes las habíamos llamado Procedimientos. Podemos tener procedimientos que no estén relacionados con ningún evento ocurrido al formulario o a sus controles. Aparte de formularios y controles, un programa puede tener Módulos, y en cada uno de los módulos podemos insertar cuantos Procedimientos y Funciones queramos. o Tipos de datos de las Variables. El tipo de datos de una variable establece el número de valores que ésta puede tener, así como el conjunto de operaciones en las que puede tomar parte como operando. En Visual Basic dicho tipo de datos se especifica al declarar la variable de forma que se guarda espacio en memoria para poder almacenar los valores de Ing. Daniel Rosillo Solano 11 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo dicho tipo de datos. Es importante indicar el tipo de datos ya que no todos tienen la misma representación en memoria, ocupando distinto espacio físico. Visual Basic de forma predeterminada, a no ser que se indique el tipo de datos, establece el tipo Variant para todas las variables. Así, al utilizar una instrucción como Dim NombreVarialbe, se especifica implícitamente el tipo Variant para dicha variable. El tipo Variant es un tipo especial de datos que puede contener cualquier clase de datos excepto cadenas de longitud fija y tipos definidos por el usuario. Al utilizar variables de este tipo, no hay que preocuparse de efectuar conversiones entre tipos para utilizarlas en distintos contextos. Las variables de tipo Variant son muy flexibles, pero ocupan mucha memoria y disminución de la velocidad. Vamos a ver los siguientes tipos de variables: TIPO DE DATOS • TAMAÑO Entero (Integer) 2 bytes Entero Largo (Long) 4 bytes Simple (Single) 4 bytes Doble (Double) 8 bytes Moneda (Currency) 8 bytes Cadena de caracteres (String) 1 byte por caracter Byte 1 byte Boleano (Boolean) 2 bytes Fecha (Date) 8 bytes Objecto (Object) 4 bytes Variant 16 bytes + 1 byte por cada caracter Lenguaje Basic o Sentencias Condicionales Llamamos sentencias condicionales a aquellas que se realizan si se cumple una determinada condición. If condición Then Instrucciones Else Otras instrucciones End If LIC. MARCELO BAÑO 12 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Existe otra sentencia condicional muy usada: Select Case Su nombre casi nos define lo que es: Selecciona, dependiendo del caso, un determinado juego de instrucciones: Select Case variable ' variable es una variable que puede tomar los valores (p.e.) de 1 a 4 Case 1 Instrucciones a ejecutar en caso de que variable = 1 Case 2 Instrucciones a ejecutar en caso de que variable = 2 Case 3 Instrucciones a ejecutar en caso de que variable = 3 Case 4 Instrucciones a ejecutar en caso de que variable = 4 Case Else Instrucciones a ejecutar en caso de que variable sea distinta a los valores anteriores End Select o Sentencias de Bucle Es muy común utilizar bucles a lo largo de un programa. Un bucle es una sucesión repetitiva de instrucciones, que se estarán realizando mientras se cumpla una condición o mientras no se cumpla otra condición. Es tan sencillo como esto: Mientras condición Instrucciones Fin del bucle Existen dos formas de bucle: Una, que realiza un número determinado de recorridos por el bucle. Es el denominado bucle por contador. Otra, realiza el bucle hasta que se cumpla (o deje de cumplirse) una condición. Es el llamado bucle por condición. Bucle por contador Realiza el bucle tantas veces como le indiquemos. Por ejemplo, en este bucle nos va a presentar las 26 letras mayúsculas del alfabeto inglés Ing. Daniel Rosillo Solano 13 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo For N=65 To 90 Label1.caption = Chr ( N ) Next N Este "programa" nos presentará en una caja (Label) los caracteres cuyo número ASCII vaya desde el 65 (A) al 90 (Z) Comenzará presentando el correspondiente al número 65, e irá presentando sucesivamente el 66, el 67, etc., hasta llegar al 90, donde se parará. Bucles por condición Ejecuta las instrucciones del bucle mientras se cumple una condición X=0 Do While X < 1000 X=X+1 Loop o Funciones de Cadenas Se denomina CADENA a una sucesión de caracteres. Una cadena puede tener uno o varios caracteres alfanuméricos. Una cadena es también una sucesión de números. Str (número): Convierte un número a una cadena en numeración decimal. Val(cadena numérica): Obtiene el valor (el número) correspondiente a esa cadena. Mas funciones de cadena: Left (cadena, n) Extrae los n primeros caracteres de una cadena, comenzando por la izquierda. Resultado = Left (cadena, 10) Right (cadena, n) Extrae lo n últimos caracteres de la cadena Resultado = Right (cadena, 10) Mid (cadena, m, n) Extrae n caracteres de la cadena, siendo el primer carácter extraído el que ocupa el lugar m. LIC. MARCELO BAÑO 14 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo o Funciones con Números Visual Basic puede operar con números tal como lo haría cualquier persona. Conoce las 4 reglas, y puede utilizar paréntesis de la misma forma que los escribimos sobre el papel. Los operadores que utiliza para las operaciones básicas son: + Suma - Resta * Multiplicación / División \ División sin decimales Mod Resto de una división ^ Eleva a un exponente El resultado de las operaciones realizadas con estos operadores solamente admiten dos resultados: True (Cierto) o False (Falso) Estos operadores son: = Igual que <> No igual que < Menor que <= Menor o igual que > Mayor que >= Igual o mayor que Operadores Lógicos Operador Devuelve True si Devuelve False si And A=True y B=True Cualquier otro caso Or A=True o B=True A=False y B=False Xor A=True y B=False A=True y B=True A=False y B=True A=False y B=False Ing. Daniel Rosillo Solano 15 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Eqv Imp A=True y B=True A=True y B=False A=False y B=False A=False y B=True A=True y B=True A=True y B=False A=False y B=True A=False y B=False Not A=False Like A=True A=True A=False o Otras Funciones Funciones Asc y Chr Estas funciones se utilizan para obtener el número ASCII de un carácter, y para, sabiendo el número ASCII, hallar el carácter correspondiente. Función Asc Devuelve el código de carácter correspondiente a la primera letra de una cadena de caracteres. Sintaxis MiVariable = Asc (Cadena) Cadena es cualquier expresión de cadena válida. Si la cadena no contiene caracteres, ocurrirá un error en tiempo de ejecución. Ejemplo: Label1 = Asc (“ABCD”) Label1 presentará 65 Función Chr Devuelve el carácter asociado con el código de carácter especificado. Sintaxis Chr (CódigoCarácter) El argumento CódigoCarácter es un número en el intervalo de 0 a 255, inclusive, que identifica a un carácter. Ejemplo Label1 = Chr (65) Label1 contendrá el carácter A Como ejemplos de números de caracteres algo especiales se debe señalar el carácter 10 (avance de línea) y el carácter 13 (Retroceso de carro). La tecla ENTER produce LIC. MARCELO BAÑO 16 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo ambos caracteres cada vez que se pulsa. Otros caracteres importantes son, el Backspace (carácter 8), y el espacio (carácter 32) • Entorno de trabajo del Visual Basic 6.0. o Barra de Herramientas o Diseñador de Formularios o Cuadro de Herramientas o Ventana de Propiedades Ing. Daniel Rosillo Solano 17 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo o Ventana de Proyectos o Editor de Código ACTIVIDADES • Clase en Laboratorio • Ejercicio básico de creación de una aplicación. • Realización de Propuesta de proyecto final. LIC. MARCELO BAÑO 18 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo • Tarea: Consulta sobre Visual Basic, matrices y creación de una pequeña aplicación básica. Ing. Daniel Rosillo Solano 19 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIDAD II TEMA: Objetos del Visual Basic. OBJETIVOS • Estudiar los Objetos que existen en el Visual Basic • Definir las propiedades y métodos del formulario • Estudiar los controles básicos mas utilizados • Realizar un ejercicio práctico aplicativo DESARROLLO. • Propiedades Las propiedades son aquellas características de un objeto que lo define "físicamente", bien por su forma o color, por su contenido, por la forma en la que va a trabajar… Las propiedades pueden modificarse cuando estamos diseñando la interface gráfica, mediante lo que llamamos caja de propiedades, o durante la ejecución del programa. • Eventos Un evento es todo aquello que le puede ocurrir a un objeto con parte gráfica (Control o Formulario) Por ejemplo, es un evento el hecho de hacer click sobre ese control, el hecho de pasar el ratón por encima de él, el hecho de que un control cambie de tamaño. Los controles tienen muchos eventos, unos de ellos comunes a casi todos los controles (Evento click, por ejemplo) y otros exclusivos de un determinado control • Métodos Un Procedimiento es el código que introducimos dentro de un evento. No pretendo hacer escuela con definiciones, puesto que el concepto de evento y procedimiento se confunde con mucha frecuencia, y no pasa nada por ello. LIC. MARCELO BAÑO 20 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo • Convención para nombrar Objetos en Visual Basic OBJETO • OBJETO ESPAÑOL PREFIJO Form Formulario frm CheckBox Casilla de verificación chk ComboBox Cuadro combinado cbo Data-bound combobox Cuadro combinado enlazado a datos dbc Command Button Botón de comando cmd Data Control de datos dat Directory list box Cuadro lista de directorios dir Drive List Box Cuadro lista de unidades drv File List Box Cuadro lista de archivos fil Frame Marco frm Grid Rejilla grd Data-bound grid Rejilla enlazada a datos dbg Horizontal scrollbar Barra de desplazamiento horizontal hsb Image Imagen img Label Etiqueta lbl Line Linea lin OLE Container Contenedor OLE ole PictureBox Cuadro de imagen pic Shape Forma shp Text Box Cuadro de texto txt Timer Temporizador tmr Vertical scroll bar Barra de desplazamiento vertical vsb El Formulario Ing. Daniel Rosillo Solano 21 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo o Propiedades del Formulario El Formulario es un objeto, que sirve de soporte de otros objetos. El nombre de FORMULARIO lo toma precisamente porque, al igual que un formulario de papel contiene textos escritos, lugares donde podemos escribir, figuras, cajas donde podemos elegir una u otra opción, etc., en este cuadro gráfico que llamamos formulario, podemos introducir textos escritos, lugares donde podemos escribir, figuras, cajas donde podemos elegir una u otra opción o Establecer Propiedades y eventos del Formulario o Utilización de Métodos • Controles mas elementales del Visual Basic o Botón de Comando El Command Button es un objeto que sirve para introducir datos a través de la pantalla. El Botón de Comando tiene la siguiente forma: Propiedades Procedimientos o Etiqueta Una etiqueta es un control que nos permite presentar un texto. La etiqueta debe usarse en aquellos casos en los que exista una información estática o dinámica que no deba ser cambiada por el operador. Propiedades Procedimientos LIC. MARCELO BAÑO 22 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo o Caja de Texto Las cajas de texto son los controles en los que Visual Basic presenta o introduce textos. Es por tanto un control bidireccional. Normalmente se usan para introdución de textos, o para la presentación de aquellos que el operador pueda cambiar. Para cambiar o escribir un texto en una caja de texto, basta con conseguir que esa caja de texto tenga el foco y teclear el texto en el teclado. Propiedades Procedimientos o Frame Un control Frame proporciona un agrupamiento identificable para controles. También puede utilizar un Frame para subdividir un formulario funcionalmente por ejemplo, para separar grupos de controles OptionButton. Propiedades Procedimientos o Check Button y Option Button El control CheckBox, o casilla de verificación, permite elegir una opción (activada/desactivada, True/False) que el usuario puede establecer o anular haciendo click. Una X en una casilla de verificación indica que está seleccionada, activada, o con valor True. Cada casilla de verificación es independiente de las demás que puedan existir en el formulario, pudiendo tomar cada una de ellas el valor True o False, a voluntad del operador. Un control OptionButton muestra una Ing. Daniel Rosillo Solano 23 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo opción que se puede activar o desactivar, pero con dependencia del estado de otros controles OptionButton que existan en el formulario. Propiedades Procedimientos o List Box y Combo Box Un control ListBox muestra una lista de elementos en la que el usuario puede seleccionar uno o más. Si el número de elementos supera el número que puede mostrarse, se agregará automáticamente una barra de desplazamiento al control ListBox. Un control ComboBox combina las características de un control TextBox y un control ListBox. Los usuarios pueden introducir información en la parte del cuadro de texto y seleccionar un elemento en la parte de cuadro de lista del control. En resumen, un ComboBox es la combinación de un ListBox, que se comporta como si de un ListBox se tratase, y de un TextBox, con comportamiento análogo a un TextBox sencillo, con la particularidad aquí de que el texto se le puede introducir por teclado, o elegir uno de los que figuran en la parte ListBox del Combo. Propiedades Procedimientos LIC. MARCELO BAÑO 24 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIDAD III TEMA: Menús, Cuadros de Dialogo y Otros Controles OBJETIVOS • Estudiar y utilizar las opciones para desarrollar menús • Utilizar los cuadros de diálogo. • Estudiar controles para formas, tiempos y otros controles. • Realizar un ejercicio práctico DESARROLLO. • Menús o El editor de menús Al usar menús se evita ocupar mucho espacio en las ventanas, ya que estos sólo aparecen cuando se despliegan explícitamente. Además, se pueden crear hasta cinco niveles de menús, por lo que el número de comandos y posibilidades es suficientemente amplio. En Visual Basic se trabajo con el editor de menús para crear, establecer propiedades y modificar los menús. Para acceder a él basta con pulsar el siguiente botón en la barra de herramientas: o Elementos del menú Ing. Daniel Rosillo Solano 25 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo o Teclas de Método abreviado Al introducir el carácter & el menú está creando una tecla de acceso a dicho objeto. Esta tecla se representa subrayada en el texto de menú y respresenta la tecla del teclado que el usuario puede pulsar para ejecutar la acción. Dicha tecla se corresponde con la letra que sigue al caracter & en la propiedad Caption del objeto menú. Si se trata de un título de menú tienes que usar la tecla de acceso en combinación con la telca [Alt.]. Una vez abierto un título de menú y desplegado sus elementos, para acceder rápidamente a uno de ellos, puedes usar la tecla de acceso directamente. o Eventos del menú Cuando en tiempo de diseño seleccionamos la opción de menú de un formulario que estamos creando, Visual Basic muestra el procedimiento de evento click de dicho elemento del menú. o Menús contextuales y sus Opciones Estos menús aparecen cuando hacemos click con el botón secundario del ratón, y suele presentar opciones que se corresponden con las acciones más usuales de la aplicación. Este menú puede aparecer en cualquier ventana de la aplicación a diferencia de los menús anteriores. Un menú contextual no se asocia con un determinado objeto situado en el formulario, al ser igual que un menú desplegable está asociado a un formulario. • Cuadros de Diálogo La mayoría de las aplicaciones Windows hacen uso de los cuadros de diálogo para establecer las opciones o introducir información que necesitan para realizar una acción indicada por el usuario. Otro uso posible de los cuadros de diálogo es presentar información al usuario. Los cuadros de diálogo se caracterizan por ser modales y no permitir poder cambiar el tamaño de la ventana, además no deberán tener una barra de menús desplegables. En Visual Basic podemos crear tres tipos de cuadros de diálogos: personalizados, predefinidos y diálogo común. o Cuadros Predefinidos o Control Diálogo Comun LIC. MARCELO BAÑO 26 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo • Otro Controles o HscrollBar y VscrollBar Son dos controles similares, para introducir un dato cuasi-analógico en una aplicación. Se toman directamente de la caja de herramientas, y tienen un aspecto parecido al de un control de volumen de un equipo de música. El HScrollBar está en posición horizontal, y el VScrollBar en posición vertical. Propiedades Procedimientos o Temporizador Este objeto permite establecer temporizaciones. Presenta una novedad respecto a los controles estudiados hasta ahora. El control Timer solamente se ve durante el tiempo de diseño. En tiempo de ejecución, el control permanece invisible. La temporización producida por el Timer es independiente de la velocidad de trabajo del ordenador. (Casi independiente. El timer no es un reloj exacto, pero se le parece) Se toma directamente de la caja de herramientas, y tiene el aspecto siguiente: Propiedades Procedimientos o Shape Se toma directamente de la caja de herramientas: Ing. Daniel Rosillo Solano 27 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Shape es un control gráfico que se muestra como un rectángulo, un cuadrado, una elipse, un círculo, un rectángulo redondeado o un cuadrado redondeado. Un control Shape no actúa como contenedor de controles. (Esto quiere decir que un control Shape nunca le servirá, por ejemplo, para albergar varios OptionButton y pretender que sean independientes de otros controles OptionButton que se encuentren fuera del control Shape. Propiedades Procedimientos o Line Se toma directamente de la caja de herramientas Line, al igual que Shape, es un control gráfico que solamente sirve para poner una línea en un formulario. Del mismo modo, no tiene procedimientos, por lo que no sirve para aportar código al programa. Solo sirve para aportar una característica gráfica, es un adorno. Propiedades Procedimientos LIC. MARCELO BAÑO 28 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIDAD IV TEMA: Procedimientos OBJETIVOS • Estudiar los diferentes tipos de procedimientos que existen en Visual Basic • Utilizar los diferentes tipos de procedimientos en programas específicos. • Realizar un ejercicio práctico con procedimientos. DESARROLLO. • Tipos de Procedimientos En Visual Basic existen tres tipos de procedimientos: Sub, Function y Property Los procedimientos Function se distinguen de los Sub por que siempre devuelven un valor asociado al nombre del procedimiento. Este valor puede ser usado por el código que lo ha llamado. Los procedimientos Property sirven para crear y manipular propiedades personalizadas de los objetos. • Creación de Procedimientos o Procedimientos Sub Para crear un procedimiento tienes dos alternativas, una utilizar la opción Procedimiento del menú Insertar o escribirlo completamente en la ventana de código. En la definición de un procedimiento Sub puedes diferenciar dos partes: la cabecera u el cuerpo del procedimiento. La cabecera del procedimiento se indica el ámbito (si es público o privado) del mismo, su tipo (mediante la palabra Sub), su nombre y la lista de parámetros (entre paréntesis). La lista de parámetros sirve para poder comunicar el procedimiento con el resto de código de la aplicación. Para ello se utiliza un parámetro que indique de alguna forma dicha circunstancia. Un Ing. Daniel Rosillo Solano 29 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo parámetro se comporta como una variable en el cuerpo del procedimiento, pudiendo simplemente utilizar su valor o inlcuso modificarlo. Cuando un procedimiento quiere comunicar algún dato a la aplicación, tiene que utilizar un parámetro para ello, es decir, puede servir bien para comunicar un valor al procedimiento o bien para que éste lo comunique a la aplicación. o Procedimientos Function El concepto de procedimiento es válido para un procedimiento Function, pero la diferencia con los procedimientos Sub siempre tiene que devolver un valor asociado al nombre del mismo. En el cuerpo del procedimiento aparecerá una asignación del valor a devolver con el nombre del procedimiento. El uso de los procedimientos Function suele estar más restringido que el de los procedimientos Sub. Un procedimiento Function es utilizado cuando necesitamos obtener un único valor, resultado de un cálculo o proceso a realizar. Un procedimiento de este tipo no debería realizar más de lo que se le pide, ni mostrar mensajes, ni devolver más valores en los parámetros, etc. La diferencia en la definición de un procedimiento Sub y un Function comienza en la cabecera. El procedimiento Function también puede contener una lista de parámetros, no debe aparecer ninguno que servirá para devolver el valor que se calcula, ya que dicho valor tiene que asociarse con el mismo nombre del procedimiento Function. Además, al tener que devolver un valor asociado al nombre del procedimiento Function, el procedimiento tiene que tener un tipo de datos. Esto se especifica indicando la cláusula AS Tipo al final de la cabecera del procedimiento, una vez indicada la lista de parámetros. Si no se especifica ningún tipo de datos, se aplica la misma regla que con las variables, es decir, tendrá el tipo Variant. • Llamadas a procedimientos Para llamar a un procedimiento sub lo podemos hacer de dos formas: Call NombreSub (parámetros) O también: NombreSub parámetros Así como la llamada al procedimiento Sub es como una instrucción más del lenguaje, la llamada al procedimiento Function suele estar situada como parte de una expresión y no LIC. MARCELO BAÑO 30 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo como una línea independiente de su código. Ya que el procedimiento Function devuelve un valor asociado a su nombre, este valor suele asignarse a alguna variable para poder utilizarlo en el código que ha realizado la llamada. La sintaxis será la siguiente: NombreVarialbe = NombreFunction(ListaParámetros) • Paso de parámetros A la hora de escribir la definición de un procedimiento Sub o Function puedes especificar cómo se pasan los parámetros de su lista de parámetros: por valor o por referencia. Cuando el paso es por valor, se utiliza la palabra clave ByVal antecediendo al nombre del parámetro en la definición del procedimiento. En este caso el procedimiento recibe una copia del argumento utilizado en la llamada y no el mismo argumento. Si realizas cambios en su valor, estos cambios podrán ser utilizados en el interior del procedimiento, pero no afectará para nada a la variable que actúa como argumento en la llamada. En el paso por referencia no se necesita especificar ninguna palabra clave, aunque también puedes hacerlo con la palabra ByRef. En el paso por referencia, el procedimiento estará manejando los propios argumentos utilizados en la llamada, ya que recibe la direción y no el valor de estos. En este caso cualquier modificación en el valor que se realice en el interior del procedimiento será sufrido por la propia variable que actúe como argumento de llamada. • Ámbito de Acción Cuando un proyecto esté constituido por distintos módulos, ya sean de formulario, clase o módulos generales de Visual Basic, es importante delimitar dónde se pueden utilizar y dónde no, los procedimientos, variables y constantes que tengas definidos o declaradas. El nivel de ocultación es establecido por el programador al declarar las variables y constantes o al definir procedimientos utilizando las palabras Pulbic y Private. Una declaración de variables de tipo Public NombreVariable As Tipo, indica que dicha variable puede ser utilizada tanto en el módulo donde se realiza como en el resto de módulos de la aplicación. Si la declaración fuera del tipo Private NombreVariable As Tipo, dicha variable sólo podrá ser conocida y por tanto utilizada, en el mismo módulo donde se declara. El uso de Public y Private también se aplica a la declaración de procedimientos. Ing. Daniel Rosillo Solano 31 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo UNIDAD V TEMA: Administrador de Datos OBJETIVOS • Presentar una idea introductoria a las bases de datos simples • Utilizar el Visual Basic para manipular Bases de Datos • Realizar un ejercicio práctico aplicando la materia de la unidad DESARROLLO. • Diseño y creación de la Base de datos Visual Basic puede acceder a distintos tipos de bases de datos. El acceso más sencillo es a una base de datos creada con el MotorJet que incorpora Visual Basic y que es compartido por Access, es decir, si quieres crear una base de datos con Access o en el Administrado de datos de Visual Basic el acceso a la misma será inmediato. Otro tipo de bases de datos con las que se puede acceder con Visual Basic son las llamadas bases de datos ISAM (Método Secuencial Indexado), entre las que se incluyen Btrive, dBASE, Foxpro y Paradox. El otro tipo de acceso es a una base de datos compatible con ODCB (Conectividad abierta de bases de datos), en las que es necesario un controlador ODCB para el tipo específico de base de datos. Si tienes dicho controlador el acceso también será inmediato. El MotorJet de Visual Basic es un completo sistema gestor de bases de datos con el que se puede crear y manipular una base de datos. La creación de una base de datos es un proceso en el cual podemos diferenciar dos partes: El análisis y el diseño. Se realiza el análisis de la base de datos cuando se piensa en qué se necesita alamacenar para tenerlo disponible en cualquier momento. El diseño es el proceso dependiente del tipo de base de datos que vayamos a utilizar, que casi con toda seguridad será relacional. Al crear una base de datos LIC. MARCELO BAÑO 32 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo relacional tienes que trabajar con tablas, registros, campos, índices, etc. Visual Basic incorpora el Administrador de datos con el que puedes crear y establecer las propiedades de las tablas que conformen la base de datos. Sin embargo, si tienes Microsofr Access es recomendable utilizarlo en lugar del Administrador de Datos, ya que genera el mismo tipo de base de datos pero con una facilidad y flexibilidad mucho mayor. Para acceder al Administrador de Datos lo haremos mediante la opción de mismo nombre en el menú Complementos. • El control Data Con el control Data, podemos acceder a una base de datos, mostrar su información, introducir nuevos registros, etc, y todo sin programar ni una sola línea de código. • Controles enlazados Una vez establecida la conexión a la base de datos e indicando el conjunto de datos a los que vamos a tener acceso mediante el control data, es necesario utilizar otros controles para mostrar o introducir dicha información. Estos controles son conocidos como controles enlazados, ya que el origen de la información que muestran est&a ligado a un determinado control data. Normalmente se utilizan cuadro de texto, cuadros de lista e incluso controles imagen para mostrar el contenido de la base de datos a la que quieres acceder. Todos estos controles pueden actuar como controles enlazados. Ing. Daniel Rosillo Solano 33 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo • Recordset Al utilizar un control data y establecer la conexión con la base de datos, estás indicando el conjunto de datos sobre los que quieres tener acceso. En Visual Basic a dicho conjunto de datos se les denomina RecordSet, siendo una propiedad del control data. Existen tres tipos de Recordset: Table, Dynaset y Snapsoht. Dicho tipo se establece mediante la propiedad RecordsetType del control data, que predeterminadamente tiene el valor Dynaset. • Modificar y añadir registros Si crear un Recordset de tipo Table o Dynaset, podrás modificar la base de datos subyacente sin tener que programar ni una sóla línea de código. Al ejecutar la aplicación, puedes desplazarte a través de los registros utilizando el control data, cualquier modificación que realices se verá reflejada en la base de datos al acceder al nuevo registro. Mediante la propiedad DataChanged de un control enlazado, si el valor mostrado por dicho control ha sufrido modificaciones respecto al valor original. En caso afirmativo dicha propiedad entrará en valor True. Se pueden agregar nuevos registros a la base de datos sin tener que programar para ello. En este caso tienes que situarte en el último registro y moverte al siguiente. Si estableces correctamente la propiedad EOFAction al realizar dicha acción se creará un nuevo registro al que se le puede introducir nueva información. La propiedad EOFAction puede tener tres valores y nos indica lo que debe ocurrir cuando se llega al final de un Recordset del control data. Si EOFAction tiene un valor MoveLast, mantiene el último registro como registro actual sin desplazarse al siguiente registro, que no existe, aunque pulsemos el botón del control data para desplazarnos al próximo registro. Si el valor EOFAction deja el registro actual invalidado (ya que dicho registro todavía no existe), y desactivas el botón que nos permite desplazarnos al siguiente tienes que controlar esta situación mediante código ya que cualquier intento de acceder a la información del registro actual producirá un error al no ser un registro válido. LIC. MARCELO BAÑO 34 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo Si EOFAction posee el valor AddNew, esntonces cuando te desplaces más allá del último registro, Visual Basic creará un registro nuevo en la base de datos, donde puedes introducir la nueva información. El valor AddNew es el que nos permite añadir nuevos registros a la base de datos sin tener que programar para ello. Para crear un nuevo registro tienes que sobrepasar el último registro que tengas en esos momentos, entonces Visual Basic limpiará el valor de los controles enlazados permitiéndote introducir la información del nuevo registro. Cuando te muevas a otro registro se añadirá a la base de datos. Al igual que se puede indicar que debe ocurrir cuando se llegue al final de un recordset, también podrás hacerlo cuando se llega al principo mediante la propieda BOFAction del control data de la misma forma que EOFAction. • Uso del RecordSet El control data nos permite movernos por un recordset de una forma rápida y sencilla a través de sus botones. Sin embargo en muchas ocasiones tendrás que escribir código en el que es necesario moverse a un determinado registro rápidamente. Para ello es necesario entender que aunque un recordset es una propiedad de control data, también tiene carácter de objeto, por lo que serán aplicables otras propiedades y métodos. • Eliminar registros Mediante el método Delete, puedes borrar un registro entero de un recordset. En este caso se tiene que situar en el registro y hacer uso de éste método. Ing. Daniel Rosillo Solano 35 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo RECOMENDACIONES • El Visual Basic es muy útil para aplicaciones de escritorio sencillas y que no requieran de un grado de programación muy avanzado, ya que por no contar con la creación de Objetos, no nos permite utilizar en toda la potencialidad del caso este paradigma de programación. • Se debe poner mucho énfasis en lograr una programación sencilla y que satisfaga las necesidades del usuario, poniendo de manifiesto la habilidad que se posee como programador. • El gestor de datos para Visual Basic es muy sencillo, por lo cuál se recomienda realizar una mayor cantidad de prácticas con otros motores de Base de Datos como SQL Server. LIC. MARCELO BAÑO 36 Módulo de Programación UNIVERSIDAD ESTATAL DE BOLÍVAR INFORMÁTICA EDUCATIVA Quinto Ciclo BIBLIOGRAFÍA Manual de Microsoft Visual Basic, McGraw-Hill Baltazar & Mariano Birnios, Creación de Aplicaciones Multimedia con Visual Basic, editorial MP Ediciones, primera edición, Buenos Aires, 1998. Baltazar & Mariano Birnios, Microsoft Visual Basic Manual de Referencia, editorial MP Ediciones, primera edición, Buenos Aires, 1999. WEBGRAFÍA http://personales.com/espana/granada/vbpedrojose/vbpedrojose.html http://www.ciberteca.net/visualbasic/tutorial/introduccion/default.asp http://www.lawebdelprogramador.com/ http://www.itlp.edu.mx http://www.monografias.com Ing. Daniel Rosillo Solano 37 Módulo de Programación