guia practica de visual basic 6.0

32
Guia practica de Visual basic 6.0 Introducción a la programación en Visual Basic 6.0 Visual Basic 6 es un lenguaje ideal para el principiante por su facilidad para comenzar a realizar pequeñas aplicaciones, y al mismo tiempo para los profesionales porque pueden acometer proyectos más complejos con una alta garantía de éxito y, a la vez facilidad de uso. 2007 Hernando Delgado V. Casa 20/05/2007

Upload: hernando-delgado-villegas

Post on 04-Jul-2015

2.216 views

Category:

Documents


11 download

DESCRIPTION

Guia sobre Visual Basic 6.0

TRANSCRIPT

Page 1: Guia Practica de Visual Basic 6.0

 

 

 

Guia practica de Visual basic 6.0 Introducción a la programación en Visual Basic 6.0  Visual  Basic  6  es  un  lenguaje  ideal  para  el  principiante  por  su  facilidad  para comenzar  a  realizar  pequeñas  aplicaciones,  y  al  mismo  tiempo  para  los profesionales  porque  pueden  acometer  proyectos más  complejos  con  una  alta garantía de éxito y, a la vez facilidad de uso.  

2007 

Hernando Delgado V. Casa 

20/05/2007 

Page 2: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 2 

 

TABLA DE CONTENIDO

Introducción a la programación en Visual Basic 6.0

1. Introducción a Visual Basic 6.0 Programación en Windows Estructura de un proyecto en Visual Basic Componentes de un proyecto El entorno de programación en Visual Basic Un nuevo proyecto en Visual Basic El entorno de diseño en Visual Basic La barra de menús de EID de Visual Basic Las barras de herramientas de EID de Visual Basic La barra de herramientas estándar Agregar proyecto EXE

Agregar formularios La caja de herramientas del EID de Visual Basic El control de las propiedades de formularios y de sus componentes La ventana de Proyecto La ventana de Código 2. Elementos básicos de un programa en Visual Basic 6.0

Elementos de un programa Sentencias para comentarios (Remark) La sentencia End

Asignación y establecimiento de propiedades Asignación de propiedades Propiedades lógicas Variables Escritura de código Tipos de datos Clasificación de los tipos de datos Tipos enteros Tipos reales Tipos monetarios Tipos de cadena Tipos lógicos Tipos para fechas Tipos para objetos de Visual Basic Tipos variantes Constantes Constantes literales Constantes simbólicas (con nombres)

Page 3: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 3 

 

Constantes expresión Variables Sentencias La sentencia de asignación Expresiones y operaciones aritméticas Operadores aritméticos Los operadores aritméticos \ y mod Escritura de fórmulas matemáticas en Visual Basic Operaciones de Entrada/Salida La escritura de resultados (salida) Impresión de resultados (salidas a impresora) La lectura de datos (entrada)

Page 4: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 4 

 

1. INTRODUCCION A VISUAL BASIC 6.0

A lo largo de los últimos años, Visual Basic ha ido facilitando a los programadores una herramienta que les ha servido perfectamente para desarrollar aplicaciones para Windows. Con el paso del tiempo Visual Basic ha ido perfeccionando tanto su entorno de desarrollo como el apartado de conexiones a bases de datos y un entorno también muy útil para procesos que suponen conexiones a redes locales o a redes externas. La versión 6.0 de Visual Basic incorpora un conjunto de herramientas de gran potencia y de extraordinaria facilidad de uso para programar para el entorno de Internet. Incorpora, asimismo, controles mejorados de enlace y conexión, permitiendo, a través de ellos, navegar por el mundo de la Web. En los dos últimos años se ha desarrollado un entorno partiendo de Visual Basic, VBScript, que permite la codificación de guiones que pueden formar parte de aplicaciones HTML supliendo, con estas herramientas, la falta de interconexión que se le achacaba. El conocimiento de Visual Basic va a suponer la base para la creación de estos guiones VBScript con los que se van a poder crear documentos ActiveX y controles ActiveX. La versión 6.0 de Visual Basic trae incorporada una versión especial de Visual Basic conocida como Visual Basic for Applications (VBA), que permite crear código fuente y macros para otros productos que no se ciñan exclusivamente al desarrollo de nuevas aplicaciones sino a la utilización de otros paquetes integrados (Microsoft Office, por ejemplo).

PROGRAMACIÓN EN WINDOWS

El concepto de programación tradicional, una programación procedimental, no se ha perdido en el desarrollo de aplicaciones que se ejecuten bajo Windows. Cuantos programas se han diseñado y comercializado con este fin disponen, es cierto, de un entorno de desarrollo integrado visual que consiguen aunar perfectamente con el concepto de programación estructurada, modularizada y con una programación orientada a objetos. Bajo estas premisas se puede hablar de una programación en y para entornos Windows. No se olvida cuanto es preciso del enfoque estructural, pues el lenguaje que se utiliza para aplicaciones Windows (Visual Basic, Visual C++, Visual FoxPro, Visual lnterDev y Delphi) parte de este marco de programación, pero este marco y sistema se ve enriquecido con técnicas visuales, utilización de las API de Windows, entornos de Objetos y un extraordinario conjunto de objetos visuales (controles) prediseñados para que el programador pueda usarlos con su mayor potencia en cualquier gestión de aplicaciones para Windows.

ESTRUCTURA DE UN PROYECTO EN VISUAL BASIC

La estructura de un proyecto en Visual Basic pasa, como todos los proyectos, por una primera fase de diseño. Aunque no es el más vistoso y ameno, es el soporte más sólido de cualquier proyecto. Se debe seguir un proceso para conseguir los objetivos que el proyecto se propone. Durante el diseño se debe tender a conseguir los siguientes resultados:

• Listado de las tareas para las que se va a diseñar la aplicación.

Page 5: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 5 

 

• Esquema de las dependencias de unas tareas con otras y, por tanto, de la interdependencia de cada una de las partes del programa.

• Criterios de comprobación de las tareas y de los resultados de las mismas.

Tras la descripción de las tareas y sus objetivos se debe acometer el diseño del interfaz de usuario. Supone la elección de un formulario o grupo de formularios y cuantos componentes vayan a incluir cada uno de ellos. Esta parte forma el soporte visual de la aplicación a través de la cual interactúa el usuario con la aplicación. El EID (Entorno Integrado de Desarrollo) (IDE, Integrated Development Environment) de Visual Basic 6 proporciona un entorno óptimo para el diseño de esta fase así como para el establecimiento de los valores para las propiedades de los controles en tiempo de diseño.

La segunda fase es la escritura del código fuente que debe responder a los posibles sucesos que se generen en tiempo de ejecución sobre los controles del soporte gráfico de la aplicación.

La tercera fase es la comprobación de la aplicación sometiéndola a las pruebas necesarias para poder observar si se producen los resultados para los que la aplicación diseñó cada una de sus partes.

La cuarta fase se debe dedicar a la creación de los paquetes que se deben distribuir. Visual Basic 6 dispone a este respecto de una herramienta para la compilación y empaquetado de todos los archivos que conforman el formulario.

COMPONENTES DE UN PROYECTO

Todos los proyectos están compuestos de un interfaz de usuario o varias. Lo forman los formularios que son el primero de los elementos (archivos .Frm). Sobre los formularios se sitúan controles. Estos controles son archivos .ocx que también forman parte del proyecto. Además de los formularios, forman también parte del proyecto el conjunto de procedimientos y funciones que responden a los posibles sucesos que se pueden generar sobre los controles situados en la interfaz de usuario en tiempo de ejecución, y todos los módulos que son precisos para otras tareas como pueden ser las de validación de los datos que se introducen a la aplicación (son los archivos .Bas). Un tercer bloque lo forman los archivos que se deben incluir como un sistema de ayuda a la aplicación. Por medio de estos archivos se le facilita al usuario información sobre cómo debe utilizarse la aplicación y de qué modo sé puede acceder a la ejecución de las tareas para las que ha sido diseñada la aplicación (los archivos .hlp o cualquier archivo de texto ASCII que supla la tarea de estos archivos .rtf o bien .txt). Lo más usual es que las aplicaciones manipulen datos que se obtienen de entornos de bases de datos. Serán las tablas de estas bases de datos otro de los componentes que se deben aportar al proyecto (los archivos .mdb de tablas de Access u otros de diferentes gestores de entornos de bases de datos Paradox, Betrieve, Dbase, etc.). Se deberán acompañar también los archivos de gráficos que, o bien como iconos o como imágenes,

Page 6: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 6 

 

se incorporen al proyecto en tiempo de diseño o de ejecución (archivos .wfm, .bmp, .jpeg, etc.).

EL ENTORNO DE PROGRAMACIÓN EN VISUAL BASIC

El entorno de desarrollo de Visual Basic contiene las herramientas que se utilizan para el diseño de las aplicaciones. Se basa en un interfaz de múltiples documentos que pueden estar activos a la vez y que se encuentran en el interior de la ventana principal. La distribución de las ventanas de trabajo sobre el entorno de desarrollo va a depender del usuario que puede disponerlas como mejor se acomoden a su modo de trabajar. Este entorno de programación permite trabajar con varios proyectos a la vez, lo que supone que se puede estar trabajando en uno de ellos y realizar los cambios que se precisen en otro que se abra en ese momento o que ya se tenga abierto. En la nueva versión, el entorno dispone de barras de herramientas y ventanas que se pueden acoplar al centro de la ventana principal o en un lateral de la misma. El entorno ayuda también en las tareas propias de la codificación de procedimientos y funciones pues dispone de Auto Quick lnfo (una información automática rápida) que recuerda, por medio de listas, las propiedades y métodos de un determinado control para ¿1 que se está escribiendo código que responda a algún suceso o función específica.

UN NUEVO PROYECTO EN VISUAL BASIC

Cuando se arranca Visual Basic o se elige la opción Nuevo Proyecto del menú Archivo, se activa una ventana en la que se muestran los iconos relativos a los

Figura 1.1. La ventana de nuevo proyecto

diferentes diseños para los tipos de proyecto que se pueden elegir para el nuevo. En la Figura 1.1 puede verse esta primera ventana. En ella se pueden apreciar los tipos de proyectos a los que se puede acceder desde la opción Nuevo Proyecto.

Page 7: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 7 

 

Visual Basic muestra los iconos para las plantillas que se van a adecuar al proyecto que el usuario elija. En la versión actual se pueden crear los tipos de proyecto que se muestran a continuación.

• EXE estándar. Este tipo de proyecto generará un proyecto estándar para un programa que se ejecute bajo el entorno de Windows. Es el archivo más común.

• EXE ActiveX. Este tipo de proyecto, que responde a los anteriores componentes OLE, se diseña para que ejecute tareas de una aplicación con múltiples niveles. A estas partes de programa pueden acceder otros programas o pueden ejecutarse con uná autonomía propia.

• DLL ActiveX. Se crea el proyecto como un programa de ejecución remota como una DLL. No tienen autonomía propia, pero permiten que los procesos, con ellas, se ejecuten con mayor velocidad. • Control ActiveX. Se crean a través de esta opción controles OCX personalizados que, posteriormente, se pueden utilizar de igual manera que los controles estándar.

• Asistente para aplicaciones. Sirve para generar el esquema de una aplicación como si de una plantilla general se tratara. No es óbice para que, posteriormente, y partiendo de la plantilla, se pueda personalizar la aplicación.

• Proyecto de datos. Incluye un entorno que acepta datos, personalizando los componentes para que puedan gestionarse grupos de datos de tablas de bases de datos.

• Aplicación lIS. Crea un proyecto que se puede usar con lIS (Internet Information Server) de Windows NT para ejecutarse en un entorno basado en el Web.

• Add-in. Proporciona herramientas adicionales como puede ser el Administrador visual de datos.

• DLL de documento ActiveX. Crea una DLL que se puede usar en el explorador de Internet.

• EXE de documento ActiveX. Crea una aplicación que se puede ejecutar en el explorador de Internet.

• Aplicación DHTML Crea la estructura de una aplicación HTML dinámica, que se puede ejecutar en un navegador Web.

Page 8: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 8 

 

EL ENTORNO DE DISEÑO DE VISUAL BASIC

Cuando se ha elegido el tipo de proyecto con que se va a generar la aplicación, se presenta en el Entorno de Desarrollo Integrado de Visual Basic la ventana de diseño. Esta ventana cuenta con los elementos que se necesitan para establecer todos los elementos componentes del interfaz de usuario así como opciones de menú y barras de herramientas para operaciones de edición y de diseño de la interfaz de usuario. Esta ventana comparte un gran número de herramientas de otras aplicaciones de Windows como las barras de herramientas y la barra de menús.

Figura 1.2. El EID de Visual Basic 6.0

La barra de menús de Visual Basic se encuentra situada en la parte superior de la ventana de diseño. A las opciones principales de la barra de menús se puede acceder a través de la tecla FlO que resalta la opción Archivo del menú, a través de la tecla ALT en combinación con la letra que presenta subrayada la opción de menú a la que queremos acceder (por ejemplo, ALT + V para acceder a la opción Ver del menú principal); la opción elegida se visualizará con todas sus opciones desplegadas; también es posible acceder a las opciones que se despliegan de cada menú por medio de las teclas rápidas que tienen asignadas a la derecha del identificador de la opción. Así, para acceder a la opción Iniciar del menú Ejecutar, será suficiente con pulsar la tecla de función F5, sin tener que elegir primero Ejecutar y luego Iniciar.

Las barras de herramientas del EID de Visual Basic

Las barras de herramientas de cualquier aplicación proporcionan un acceso rápido a muchas de las funciones que efectúan algunas tareas para las que se ha diseñado la

Page 9: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 9 

 

aplicación. Todos los botones que forman las barras disponen de una ayuda que se visualiza en un recuadro de color cuando se sitúa el puntero del ratón sobre el botón de una herramienta determinada y se permanece sobre él dos o tres segundos. Las barras de herramientas del EID de Visual Basic pueden ser de diferentes clases. Para poder activar todas las barras de herramientas de Visual Basic o unas barras concretas, se elige la opción Ver del menú y, una vez desplegado, la opción Barras de herramientas y Personalizar para poder determinar la barra o barras que queremos queden activadas para poder acceder a ellas durante el diseño de los diferentes elementos que van a conformar la aplicación. Una vez que se ejecuten los pasos descritos en el punto anterior, aparecerá una ventana como la que se muestra en la Figura 1.3.

Figura 1.3. Ventana Personalizar Barras de herramientas

• La barra de herramientas estándar. Es la que aparece cuando se activa la ventana de diseño y ofrece el acceso a las funciones que se usan con mayor frecuencia.

• La barra de herramientas para la Edición. Que presenta un conjunto de botones útiles para las tareas de edición cuando se está escribiendo código.

En la Figura 1.4 se pueden activar las cuatro siguientes barras de herramientas:

Figura 1.4. Barras de herramientas opcionales

Page 10: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 10 

 

• La barra de herramientas para la Depuración. Contiene un grupo de botones que sirven para el seguimiento de los valores de las variables en tiempo de ejecución y, además, para la depuración del código fuente del programa.

• La barra de herramientas para Editar formularios. Con botones para facilitar las operaciones de tratamiento de los formularios y de los controles que contienen.

La barra de herramientas estándar

La barra de herramientas estándar tiene distribuidos sus botones en varios grupos separados por una barra vertical. El primero de la izquierda muestra tres botones cuya finalidad es la de Agregar proyecto EXE, Agregar formularios y Editar menús. Los dos primeros disponen de una lista desplegable que permite elegir entre las siguientes opciones:

Agregar pro yecto EXE Permite agregar al escritorio un proyecto de los siguientes tipos: • Proyecto EXE estándar.} • Proyecto EXE ActiveX. • Proyecto DLL ActiveX. • Proyecto Control ActiveX. Agregar formularios Este segundo botón permite añadir al proyecto activo los siguientes elementos: • Nuevo formulario. • Formulario MDI. • Nuevo módulo. • Nuevo módulo de clase. • Nuevo control de usuario. • Nueva página de propiedades. • Archivos ya existentes.

La Caja de Herramientas del EID de Visual Basic Los controles que se usan para diseñar la interfaz de usuario y, a través de ellos, establecer mecanismos que gestionen las tareas de una aplicación están contenidos en lo que se denomina la Caja de Herramientas. Cuando se activa el EID de Visual Basic se sitúan sobre ella los controles que son más utilizados en los formularios. Son los controles básicos que se pueden observar en la Figura 1.5.

Page 11: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 11 

 

Los diferentes controles que se insertan en el interior de la Caja y que se muestran en la figura adjunta son, de arriba hacia abajo y de izquierda a derecha, los siguientes:

Figura 1.5. Caja de Herramientas

• Puntero. Sirve para cancelar el dibujo de un control y restablecer el puntero del ratón sobre el formulario.

• PictureBox. Contiene y muestra una imagen gráfica. • Label. Muestra texto como una etiqueta que no puede ser modificada por el usuario

en tiempo de ejecución. • TextBox. Sirve para mostrar un cuadro de texto a través del cual el usuario se

puede comunicar con una tarea específica de la aplicación. Permite que el texto que contiene se pueda modificar.

• Frame. Describe un marco de agrupamiento en el que se pueden incluir controles del mismo tipo formando a modo de isletas de controles independientes de otros de su misma clase dentro de un mismo formulario.

• CommandButton. Botones de órdenes para que, cuando se pulse sobre él, se inicie un proceso. Puede estar etiquetado con un rótulo o iconó (o ambos) que indiquen la tarea que inicia al ser pulsado.

• CheckBox. Las casillas de verificación permiten la elección de una o varias de las operaciones o atributos que describen. No son excluyentes,lo que significa que se pueden elegir varias de ellas a la vez.

• OptionButton. Los botones de radio permiten la elección de uno de los procesos o propiedades o atributos que describen. Son excluyentes, lo que significa que solamente se puede elegir uno de los que se incluyen en el mismo formulario. Si se pretende que se pueda elegir más de uno deberán incluirse cada grupo de estas opciones excluyentes en controles Frame.

• ComboBox. Lista un grupo de elementos de los que se puede elegir uno o varios. Permite también incluir nuevos elementos en tiempo de ejecución.

• ListBox. Muestra una lista de elementos de los que el usuario puede elegir uno o varios. Es una lista cerrada de modo que, en tiempo de ejecución, el usuario no puede añadir a la lista nuevos elementos.

Page 12: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 12 

 

• HscrollBar. Origina un valor basado en la posición horizontal que ocupa en la barra un cuadro que se desplaza sobre ella de izquierda a derecha o de derecha a izquierda.

• VscrollBar. Origina un valor basado en la posición vertical que ocupa en la barra un cuadro que se desplaza sobre ella de arriba abajo o desde abajo hacia arriba.

• Timer. Permite que se ejecuten tareas dependiendo del valor que se establezca como demora o intervalo en este control temporizador.

• DriveListBox. Muestra las diferentes unidades de disco del puesto de trabajo o de la red para que el usuario pueda elegir una para situarse en ella.

• DirListBox. Muestra los diferentes directorios de la unidad de disco del puesto de trabajo o de la red seleccionada para que el usuario pueda elegir uno y situarse en él.

• FileListBox. Muestra y permite que el usuario elija entre los archivos del directorio elegido de la unidad actual.

• Shape. Permite incluir formas geométricas en el formulario. • Line. Permite incluir líneas en el formulario. • Image. Almacena y muestra una imagen. Permite además adaptar el tamaño de la

imagen al que se especifique para este control, aumentando o disminuyendo el tamaño original.

• Data. Proporciona a través de él un enlace con tablas de archivos de bases de datos.

Además de los controles comunes que se incluyen en la Caja de Herramientas se precisan, a veces, para determinadas operaciones de la aplicación, otros controles que no se incluyen por defecto en esta Caja. Para conseguir incluirlos se deberá elegir la opción Componentes del menú Proyecto y, cuando se muestre la ventana de la Figura 1.6, se elegirá de ella el componente que se desee.

Figura 1.6. Ventana de Componentes

Puede suceder que, cuando se incluyen muchos controles dentro de la Caja de Herramientas, no sea muy útil la búsqueda y elección de un determinado control de los

Page 13: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 13 

 

que están sobre la Caja de Herramientas. Visual Basic permite que se añadan nuevas páginas a la Caja de Herramientas y pasar a ella los controles que se quieran separar de la página General de la Caja de Herramientas. Para ello se sigue el siguiente proceso:

• Se pulsa el botón derecho del ratón cuando el puntero esté situado sobre la Caja de Herramientas.

• Se elige la opción Agregar Ficha de las que se muestran en el menú des- plegable (Fig. 1.7).

• Se introduce el nombre que se quiera dar a la ficha y se pulsa Aceptar. • Se trasvasan, pinchando y arrastrando, el componente que se quiera trasladar

desde la ficha General a la nueva ficha que se ha incluido en la Caja de Herramientas, repitiéndose esta última operación con todos los componentes que se quieran trasladar.

Observe el resultado de la operación en la Figura 1.8.

El control de las propiedades de formularios y de sus componentes Una de las ventanas más importantes del EID de Visual Basic es la ventana de Propiedades. Por medio de ella se pueden determinar los valores que se van a asignar a las propiedades de los controles y del propio formulario. En esta ventana, que se puede observar en la Figura 1 .9, se distinguen, por una parte, una lista desplegable, situada debajo de la cabecera de la ventana, y dos páginas para poder observar las propiedades del control que se ha elegido de los que se muestran en la lista desplegable. Estas páginas presentan las propiedades o bien ordenadas alfabéticamente o bien por categorías.

Figura 1.7. Agregar una nueva ficha a

la Caja de Herramientas

Figura 1.8. Caja de

Herramientas con las

fichas General y

Nueva en la que se han

incluido

Page 14: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 14 

 

Las propiedades de un formulario o de un componente determinan el aspecto que va a presentar en tiempo de ejecución así como su comportamiento. Se puede modificar su aspecto, el estilo de su borde, el nombre que presentará el componente, el color de relleno, la altura y anchura del control, etc.

Algunas de las propiedades, por ejemplo la propiedad Font, cuando se activan visualizan un botón en la casilla situada a la derecha de la propiedad. Este bótón contiene tres puntos suspensivos (...). Los puntos suspensivos indican que, para elegir los valores para la propiedad (en el caso de los fuentes: tipo de letra, tamaño, aspecto de la letra elegida...), se va a visualizar una ventana por medio de la cual se pueden establecer los valores para la propiedad. Otras veces presentan el botón con una flecha indicando que los valores se pueden elegir entre los que se visualizan al desplegar la lista que los describe.

La ventana Proyecto La ventana Proyecto muestra todos los formularios, módulos, clases, controles de usuario, etc., que un proyecto contiene. Se trata de una lista esquematizada y agrupada por niveles. Los rótulos de cada nivel van precedidos de un signo más (+) que, al pulsarlo, despliega cuantos elementos se incluyen en ese nivel. En esta ventana se incluye una descripción de todos los archivos que conforman el proyecto. Son archivos de formulario (.FRM), de módulos (.Bas), de módulos de clase (.CLS), controles creados por el usuario (.CTL) y documentos ArchiveX (DOB). Para ver todos sus elementos, se puede pulsar sobre la ventana el botón derecho del ratón a través de cuyas opciones se puede acceder al código, a los controles, a sus propiedades, y también se permite añadir nuevos elementos, guardar el formulario, etc. (véase Fig. 1.10).

Figura 1.9. Ventana de Propiedades

Page 15: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 15 

 

La ventana de Código

En la ventana de Código se realiza la escritura del código fuente de todos los módulos .BAS así como el de los módulos que responden a los eventos de cualquiera de los controles que componen la interfaz de usuario. Para activarla se pueden elegir dos caminos. El primero supone realizar un doble clic con el botón activo del ratón sobre el control cuyo código se quiere escribir, eligiendo el botón Ver código de la ventana de Proyecto o eligiendo la opción Código del menú Ver. Esta ventana presenta en su parte superior dos listas desplegables. La de la izquierda permite desplegar toda la lista de los objetos que componen el formulario activo. La de la derecha visualiza los sucesos posibles del objeto elegido en la ventana de la izquierda para los que se puede escribir código. Si alguno de estos sucesos ya dispone de un procedimiento codificado, se visualiza en la lista en negrilla. La edición se gestiona como con cualquier otro editor de texto. Se puede copiar, cortar, pegar, etc. El lector podrá observar el aspecto que el editor da al texto según sea una palabra reservada, un identificador de variable, una línea de comentario, etc. La Figura 1.10 muestra también la ventana de código con un procedimiento para la carga de un formulario con comentarios.

Figura 1.10. Ventanas de Proyecto y de

Código, activadas

ambas sobre el EID de

Visual Basic

Page 16: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 16 

 

2. ELEMENTOS BASICOS DE UN PROGRAMA EN VISUAL 6.0

Nunca se recalcará lo suficiente que la clave de la programación en Visual Basic es reconocer que Visual Basic, generalmente, procesa código sólo como respuesta a un suceso. Si se piensa que un programa en Visual Basic es un conjunto de piezas independientes que «despiertan» sólo como respuesta a los sucesos que les han dicho que reconozcan, no se incurrirá en un gran error, pero sí se incurriría en error si piensa que el programa tiene una línea inicial y una línea final y se mueve de arriba a abajo. De hecho, a diferencia de muchos lenguajes de programación las líneas ejecutables en un programa en Visual Basic deben estar dentro de procedimientos o de funciones. Las líneas ejecutables aisladas no funcionan. ELEMENTOS DE UN PROGRAMA Puede afirmarse que cualquier programa está formado por un grupo de valores constantes, valores variables y estructuras que procesan esos valores para producir unos resultados. Visual Basic no es una excepción. El proceso que supone la manipulación de unos datos de entrada para producir unos resultados se consigue a base de lo que se denominan sentencias. Las sentencias manipulan los datos, establecen relaciones entre ellos, buscan la identidad de unos determinados valores, etc. Cuando se introduce una sentencia en Visual Basic se emplea la misma tecnología avanzada introducida por QuIckBASIC para analizarla y procesarla. Esto ocurre inmediatamente después de pulsar ENTER. Visual Basic ignora las mayúsculas y los espacios excepto si van en un texto entrecomillado. No obstante, Visual Basic trata de imponer sus propias reglas. Pone en mayúsculas la primera letra de cada palabra reservada y con frecuencia añade espacios extra para aumentar la legibilidad. Por ejemplo, cualquiera que sea la forma en que se ha escrito la palabra Print, PRint, PrinT, print, etc., al pulsar ENTER se convertirá en Print. Es una buena idea para lograr un método estándar de espaciado y escritura en mayúsculas del código. Las sentencias de Visual Basic rara vez emplean números de línea, y cada sentencia normalmente ocupa su propia línea. Se pueden combinar sentencias en una misma línea colocando dos puntos (:) entre las sentencias. Si se usa una línea, con más caracteres que los que caben en una ventana, Visual Basic desplaza la ventana hacia la derecha según lo vaya necesitando. Sentencias para comentarios (Remark) Las sentencias Remark (o Rem) se ponen en los programas para explicar lo que hace el código. Es fácil poner en duda la importancia de los comentarios hasta que se intenta modificar (o corregir) un programa que hizo otro o incluso un programa

Page 17: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 17 

 

que hizo uno mismo, pero hace varios meses. Las sentencias Remark no son ni ejecutadas ni procesadas por Visual Basic. En consecuencia, no ocupan espacio dentro del código compilado. Hay dos formas de indicar una sentencia Remark. La primera, empleando la palabra clave Rem. Como es usual, las líneas del programa están sangradas para mejorar su legibilidad. El segundo método de indicar una sentencia Remark es mediante el empleo del apóstrofo (a), que no hay que confundir con los acentos. El apóstrofo se encuentra debajo del signo de interrogación (?). También se pueden añadir comentarios al final de las líneas. En este caso es más fácil emplear el apóstrofo, puesto que para el formato Rem es necesario poner dos puntos (:) delante. Todo lo que siga a una sentencia Rem será ignorado sin tener en cuenta si es una sentencia ejecutable de Visual Basic o no. El comentar las sentencias ejecutables es una técnica común de ayuda a la depuración de los programas. La sentencia End Cuando Visual Basic procesa una sentencia End el programa se para. Si se está desarrollando un programa, se vuelve al entorno de desarrollo. El efecto es exactamente el mismo que cuando se escoge la sentencia End del menú Run. En programas ejecutables después de una sentencia End se cierran todas las ventanas abiertas por el programa y se borra éste de la memoria. En un programa en Visual Basic se pueden poner todas las sentencias End que se quiera, pero es una buena práctica de programación el restringir el núme ro de sucesos que finalizan un programa. Asignación y establecimiento de propiedades Dos de las tareas más comunes del código en Visual Basic es dar valores a las variables y establecer las propiedades. Visual Basic usa el signo igual (=) para amba soperaciones. Opcionalmente se puede emplear también la palabra clave Let que era corriente en las antiguas versiones de BASIC. Let NombredelaVariable = valor El nombre de la variable siempre aDarec az la iz uierday ejyrsiepe a_la derecha. Visual Basic debe ser capaz de obtener un valor del lado derecho d la sentencia de asignación. Hará cualquier tipo de proceso necesario para que esto ocurra. Se puede considerar una sentencia de asignación como una forma que tiene una variable Visual

Page 18: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 18 

 

Basic de obtener un (nuevo) valor, o como una forma de copiar la información desde el origen al destino. Asignación de propiedades Si se quiere cambiar la propiedad de un objeto Visual Basic, hay que colocar el nombre del objeto seguido por un punto y luego el nombre de la propiedad en el lado izquierdo del signo igual y el valor nuevo en el lado derecho: objeto.propiedad =valor Se tiene, por ejemplo, un botón de texto (de nombre Text1 a efectos de control) y se quiere dejar en blanco mediante código en lugar de emplear la barra de propiedades. Sólo se necesita una línea como la siguiente en un procedimiento de suceso: Text1.Text=”” Puesto que no hay nada entre las comillas, el texto asignado a esta propiedad quedará en blanco. De una forma similar, una línea como Text1.Text=”Hola, mundo” en un procedimiento de suceso cambiará el valor de la propiedad text tomando el texto entrecomillado. Es posible cambiar los valores de las propiedades mediante código tantas ve- ces como se quiera. Por ejemplo, si se necesita cambiar la leyenda de un botón de órdenes denominado Commandl, se puede colocar en cualquier procedimiento de suceso una línea como ésta: Command1.Caption = “Salir” De forma análoga, si se necesita que el botón denominado Command5 sea el primer botón en el orden de tabulación, basta con añadir una línea como ésta a un procedimiento de suceso: Command5.TabImdex = 0 Si ahora se quiere que un formulario llamado Formi se mueva cuando se haga clic sobre diversos botones, éste es un ejemplo de procedimiento de suceso que se puede emplear: Sub BotonIzquierda_Click()

Form1.Left=Form1.Left-75 End Sub

Page 19: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 19 

 

Préstese atención a la línea «Form1.Left=Form1.Left-75». En el lado izquierdo de la sentencia de asignación se encuentra la propiedad que toma el valor, pero en este caso parece como SI estuviera también en el derecho. Lo que ocurre es que Visual Basic analiza primero el lado derecho de cualquier sentencia de asignación para extraer su valor. En este caso mira la posición actual del lado izquierdo del formulario y calcula el número de twips que está del extremo izquierdo de la pantalla. Seguidamente resta 75 de este valor. Solamente una vez que se haya hecho esto mira al lado derecho. Visual Basic cambia entonces el antiguo valor de la propiedad «Left» por la nueva. Todo esto puede ser un poco confuso. Hay gente que encuentra mucho más útil recordar que en el lado derecho de las sentencias de asignación están únicamente los valores a introducir y en el lado izquierdo exclusivamente lo que se cambia. Cada objeto Visual Basic tiene una propiedad por omisión (por ejemplo, las cajas de texto tienen la propiedad Text). Para referirse a la propiedad por omisión no es necesario usar el nombre de la propiedad. Por ejemplo, se puede introducir Text1=”Hola de nuevo, mundo” Este método, sin embargo, hace que el código sea menos legible y que sea necesario recordar cuál es la propiedad por omisión de cada control. Por ello, y debido a la pequeña ganancia de velocidad que este método proporciona, este libro no emplea esta característica de Visual Basic. Propiedades lógicas Las propiedades que sólo toman el valor True (Verdadero) o False (Falso) se denominan propiedades lógicas. Ya se han visto muchas propiedades lógicas o booleanas (por George Boole). Éstas especifican si un botón de órdenes es visible, si está habilitado o si es por omisión un botón de órdenes o de cancelación• Visual Basic tiene constantes incorporadas para estas propiedades importantes. Una sentencia como Command1.Visible = False en un procedimiento de suceso oculta el botón de órdenes. El control permanece oculto hasta que Visual Basic procese la siguiente sentencia: Command1.Visible = True Si se quiere que la tecla TAB salte por encima del control mientras que se ejecuta un programa hay que cambiar la propiedad TabStop a False. Control.Tabstop = False

Page 20: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 20 

 

Internamente, Visual Basic usa los valores 0 para False y -1 para True (en realidad vale cualquier valor distinto de cero para True). La forma usual de cambiar entre las propiedades booleanas es mediante el operador Not. Supóngase que se tiene en un procedimiento de suceso una sentencia como la siguiente: Command1.Visible = Not(Commandl .Visible) Esta sentencia funciona como sigue: Visual Basic busca el valor actual de Commandl.Visible y luego, mediante el operador, lo cambia. Es decir, que si era True lo pone en False, y viceversa. Variables Las variables en Visual Basic contienen información (valores). Siempre que se emplee una variable, Visual Basic establece un área de la memoria del computador para almacenar la información. Los nombres de las variables en Visual Basic pueden tener una longitud de hasta 40 caracteres y, con tal de que el primer carácter sea siempre una letra, pueden incluir cualquier combinación de letras, números y el subrayado. El hecho de que el nombre de la variable esté en mayúsculas o minúsculas es irrelevante. La siguiente tabla expone algunos posibles nombres de variables e indica cuándo son correctos. Basel_Bola Correcto. 3Base_Bola Incorrecto: el primer carácter no es una letra. Base. 1 Incorrecto: emplea un punto. EstoTieneUnaLongitudCorrecta Correcto: sólo tiene 28 caracteres. Todos los caracteres de un nombre de variable son significativos, pero es indistinto que estén o no en mayúsculas o en minúsculas. BASE es la misma variable que base. Por otra parte, Base es una variable diferente de Base1, y ambas son diferentes de Base_1. Sin embargo, Visual Basic cambia siempre el formato de los nombres de las variables para reflejar el último criterio de mayúsculas que se haya empleado. Si se emplea sucesivamente lnteréshipoteca, ¡nteréshipoteca e InterésHipoteca como nombres de variables, cuando se salga del entorno de programación Visual Basic automáticamente cambiará todos estos nombres a InterésHipoteca, ya que éste ha sido el último que e ha empleado. La elección de nombres de variables significativos ayuda a documentar los programas y hace que sea más fácil el inevitable proceso de depuración. Los nombres de las variables significativos son una excelente forma de clarificar el sentido de muchos tipos de sentencias del programa.

Page 21: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 21 

 

No es posible el empleo de los nombres reservados por Visual Basic como nombres de variables; por ejemplo, Print no es un nombre de variable aceptable. No obstante, se pueden insertar palabras reservadas dentro del nombre de una variable. Por ejemplo, Print1 es un nombre de variable perfectamente aceptable. Si se trata de usar una palabra reservada como nombre de variable, Visual Basic presentará un mensaje de error en cuanto se pulse la tecla ENTER. La regla más común sobre los nombres de las variables es poner en mayúsculas sólo la primera letra de las palabras que forman parte de ellos (por ejemplo, lnterésHipoteca en lugar de lnteréshipoteca). Esta regla se denomina nombres de /‘ variables con mayúsculas mezcladas. Ésta es la regla que se emplea en este libro, ya que la mayoría de la gente la considera más legible. Hay quien añade también espacios subrayados (por ejemplo, Interés Hipoteca). Este estilo no se emplea en este libro, ya que desperdicia espacio y, ocasionalmente, causa problemas en la depuración. Escritura del código El código se escribe siempre en la ventana de código. Esta ventana se abre siempre que se haga un doble clic sobre un control o formulario. Para abrir la ventana de código se puede también hacer clic sobre Ver Código de la ventana Proyecto o en el menú Ver, o pulsar F7. La ventana de código tiene un título que identifica al formulario, dos listas y un área para editar el código Cuando se introduce el código se dispone de todas las técnicas usuales de edición en Windows. La lista de la izquierda, llamada Caja de objetos, lista todos los controles del formulario y, además, un objeto llamado general que contiene el código común que puede usarse con todos los procedimientos pertenecientes al formulario. Este tipo de código se verá más tarde en las secciones de este capítulo tituladas «Cambio del valor por omisión de los tipos» y «Constantes». La lista de la derecha es la lista de procedimientos. Como ya se ha visto, la lista presenta todos los sucesos reconocidos por el objeto seleccionado en la lista de Objetos. Si ya se ha escrito algún procedimiento de suceso, aparecerá en negrita en la lista de Procedimientos. TIPOS DE DATOS Los datos que se manipulan en una aplicación pueden ser muy variados. Se pueden considerar como datos fijos (constantes) o datos que se pueden modificar a lo largo del proceso (variables). En este apartado y los siguientes se estudian los tipos de datos que se manipulan en el entorno de Visual Basic. Es cierto que existen lenguajes con un número más amplio de tipos de datos. Visual Basic ha querido partir de la sencillez del entorno de Basic y son muy pocos, aunque suficientes, los nuevos datos que ha incorporado. Visual Basic maneja once tipos estándar de datos. Son los que se describen en los siguientes apartados.

Page 22: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 22 

 

CLASIFICACIÓN DE LOS TIPOS DE DATOS Los tipos de datos se pueden clasificar en dos grandes grupos: Datos numéricos y Datos no numéricos. Los numéricos se dividen a su vez en enteros (cortos y largos) y reales (de simple y de doble precisión). Los no numéricos se dividen en cadenas de caracteres, datos de tipo lógico, de tipo fecha y datos monetarios. Todos los tipos de datos se gestionan a través de variables. Tipos enteros Los datos de tipo entero no gestionanan valores con parte decimal. Pueden ser de dos tipos: Octeto (Byte), Enteros cortos (Integer) y Enteros largos (Long). Los datos de tipo Byte guardan valores enteros en el rango de 0 al 255. Ocupan un Byte. Las variables enteras de tipo Integer guardan valores enteros relativamente pequeños (entre -32.768 hasta 32.767). La aritmética entera es muy rápida, pero está restringida a estos márgenes. El identificador usado es el signo de tanto por ciento (%). Las variables enteras del tipo Long es un tipo que fue introducido por Quick BASIC. Guarda enteros entre -2.147.483.648 y +2.147.483.647. El identificador empleado es el ampersand (&). La aritmética de los números enteros largos es muy rápida y en máquinas actuales la pérdida de prestaciones por emplear enteros largos en lugar de enteros ordinarios es muy pequeña o casi nula. Tipos reales Los tipos reales manipulan valores que no sólo guardan la parte entera sino también la parte decimal o fraccionaria de las cantidades. Pueden ser de simple y de doble precisión. Single (Real de simple precisión). Para números de precisión simple el identificador es un signo de exclamación (!). Estas variables guardan números aproximados. Pueden ser fraccionarios, pero sólo son precisos siete dígitos. Esto significa que si la solución es 12.345.678,97110 hay garantía de la precisión del 8,97. La respuesta podría ser también 12.345.670,01. Aunque su precisión es limitada, el tamaño (límite) de estos números es hasta de 38 dígitos. Los cálculos con este tipo de variables serán siempre aproximados. Más aún, la aritmética con estos números es más lenta que con variables enteras o enteras de formato largo. Double (Real de doble precisión). Las variables de doble precisión guardan números con una precisión de 16 dígitos y permiten más de 300 de ellos. El identificador empleado es el signo de párralo (#). Con este tipo de variables los cálculos son también aproximados. Se puede uno fiar de los primeros 16 dígitos. Los cálculos con los números de doble precisión son relativamente lentos. Estas variabIes se emplean en

Page 23: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 23 

 

Visual Basic principalmente en los cálculos científicos debido al tipo de datos descritos a continuación. Tipos monetarios Las variables de moneda (Currency) son un tipo de variable que será nuevo para los usuarios de GW-BASIC y QuickBASlC. Se diseñaron para evitar ciertos problemas inherentes al cambio entre las fracciones binarias y fracciones decimales. (Es imposible hacer 1/10 u otra cosa que no sea 1/2, 1/4, 1/8, 1/16, etc.) El tipo moneda puede tener 4 dígitos a la derecha del punto decimal y hasta 14 a la izquierda del mismo. Dentro de estos márgenes la aritmética es exacta. El identificador es el signo arroba (@), no el signo del dólar, que identifica a las cadenas. Si bien los cálculos que no sean sumas y restas son tan lentos como con números de precisión doble. Éste es el tipo preferido para los cálculos financieros de un tamaño razonable. (Para aquellos que estén interesados, este tipo emplea 5 dígitos enteros que se encuentran multiplicados por el factor 10.000. Esto proporciona 15 lugares a la izquierda del punto decimal y 4 a la derecha.) Tipos de cadena Los tipos de cadena (String) se han diseñado para guardar caracteres. El identificador es el signo del dólar ($). Los tipos de cadena se gestionan a través de variables que pueden, teóricamente, guardar hasta 65.535 caracteres, si bien alguna máquina puede guardar menos debido a restricciones de memoria, necesidades de Windows o número de variables de cadena usadas en el formulario. Uno de los usos más comunes de las variables de cadenas es extraer la información contenida en las cajas de texto. Por ejemplo, si se tiene una caja de texto llamada Text1, la sentencia ContenidoDeTexto = Text1.text asigna el texto contenido en la caja de texto a la variable que hay a la izquierda. Tipos lógicos Los datos lógicos (Boolean) posibilitan la declaración de variables que almacenen estos valores. Ocupan dos bytes y su rango de variación es de False a True. Tipos para fechas Los valores correspondientes a fechas y horas (Date) ocupan ocho (8) bytes y permiten el almacenamiento de estos datos en el rango de 1/1/100 hasta el 31/12/9999.

Page 24: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 24 

 

Tipos para objetos de Visual Basic El tipo Objeto permite la incorporación como un tipo de dato el relacionado con las clases de los objetos de Visual Basic. Se trata de objetos Ole. Ocupan 4 bytes. Sirven para la declaración de variables que puedan referenciar controles o formularios, crearlos y almacenar en ellas la oportuna información. Tipos variantes El tipo variante (Variant) fue una novedad en Visual Basic 2.0. Se diseñó para almacenar en un lugar los diferentes datos posibles recibidos por Visual Basic. No importa que la información sea numérica, de fecha/hora o de cadena; el tipo • variante puede guardar todos. Visual Basic automáticamente lleva a cabo todas las conversiones necesarias para que el programador no tenga que preocuparse de qué tipo de dato se está almacenando en la variable. Se puede emplear una función incorporada para determinar si los datos almacenados en la variable son numéricos de fecha/hora o de cadena. Esta función permite al usuario comprobar fácilmente las entradas para ver si coinciden con el formato que se desea. El empleo de los tipos variantes en lugar de un tipo específico de variable es un poco más lento debido a las conversiones necesarias, y hay programadores que creen que confiar en la conversión automática de tipos de variables conduce a una programación descuidada. CONSTANTES Las constantes son valores que no se modifican a lo largo de todo el proceso. En Visual Basic las constantes pueden ser literales o simbólicas. Constantes literales Las constantes literales son la enumeración de un conjunto de caracteres o de dígitos y el punto decimal que se incluyen en una determinada parte del código fuente, según sean constantes de cadena o constantes de literales numéricos. Los literales de caracteres van limitados por comillas. El siguiente ejemplo “Esto es una constante literal de caracteres” describe una constante literal limitada por los signos de las comillas. Los literales numéricos son una sucesión de dígitos con o sin punto decimal. El literal 3,141592 describe un valor para una cantidad constante en la que el punto (.) sirve de separador entre la parte entera y la parte decimal.

Page 25: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 25 

 

Constantes simbólicas (con nombres) Las constantes simbólicas o constantes con nombres son nombres que se pueden utilizar en el código fuente para suplir a los valores que en la declaración de estas constantes se les ha asignado. La declaración de una constante se realiza a continuación de la palabra reservada Const. El siguiente ejemplo declara una constante que va a almacenar el valor para el MEMBRETE de los documentos de una empresa. Const MEMBRETE = “Manufacturas S.A.” Se ha declarado el identificador MEMBRETE para que cuando se use se esté verdaderamente utilizando su valor: “Manufacturas S .A.” La constante Const RaízDeDos = 1.414213 declara la constante RaizDeDos para que, cuando se utilice en un listado, sea sustituida por su valor. Constantes expresión Las constantes expresión son constantes que almacenan en su identificador el resultado de una expresión. Para que estas constantes tengan validez es preciso que los valores de los operandos de la expresión estén declarados como constantes con anterioridad o se trate de literales. Así, Const CIEN=100 Const BaseAnnos= CIEN Const BaseMeses=l2*CIEN Const BaseDiasComerciales= 360*CIEN están declarando constantes para el cálculo del interés simple de un capital cuando el tiempo que se especifique para el cálculo sea en años, en meses o en días del año comercial. VARIABLES Las variables como elementos del código de un programa son identificadores de una zona de memoria que tiene que almacenar un dato que puede ser modificado a lo largo del proceso. Las variables, aunque no sea necesario, se deben declar rante de ldentificad )pde tene ñiáimo d4O-caracteres significativos. El nombre que se da a la variable se suele elegir para que sugiera el valor que esa zona de memoria va a

Page 26: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 26 

 

contener. La declaración de una variabl puede ser explícita o implícita. Las Declaraciones Explícitas utilizan diferentes formatos de declaración. Los siguientes ejemplos Dim VarNombre As TipoDato Private VarNombre As TipoDato [Solamente tiene valor en el módulo actual] Static VarNombre As TipoDato [Conserva valores de llamadas anteriores] Public VarNombre As TipoDato [General. Presente en todo el programa. Puede usarse como una propiedad de un control] son diferentes modos de declarar variables. Entre los corchetes se especifica el ámbito de cada tipo de declaración. Las declaraciones implícitas suponen el uso de sufijos para la especificación del tipo. Algunos tipos de datos no admiten declaración implícita de variables. Se declaran en tiempo de ejecución al asignar valores a las variables. Se deberá especificar el sufijo, si el tipo de dato dispone de él. Los sufijos son: % para enteros cortos & para enteros largos i para reales de simple precisión # para reales de doble precisión @ para datos de tipo monetario $ para datos de tipo cadena Se puede observar que no existen sufijos para identificadores de variables que deban ser del tipo Variant, Boolean, Byte, Objed o Date. La declaración de Cadenas de longitud Fija se consigue situando un asterisco a la derecha de la palabra reservada String, y, a la derecha de éste, el valor del número de caracteres que puede contener como máximo la cadena. Dim VarNombre AB String *N° de caracteres para la cadena SENTENCIAS Una sentencia es una instrucción escrita en Visual Basic que indica las tareas que debe realizar el programa. Las sentencias constan de una o varias palabras reservadas y una sintaxis que constituyen su formato. Puede ser de dos tiposos: ejecutables o no ejecutables. Las ejecutables avanzan el flujo de control de la lógica del programa indicándole que debe hacer (una tarea específica); las no ejecutables realizan tareas de declaración de constantes, tipos, identificadores de variables, etc.

Page 27: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 27 

 

La sentencia de asignación La sentencia de asignación sirve para almacenar un valor en una zona de memoria a través de un ¡dentificador de esa zona (nombre de la variable). Consta la sentencia de dos partes. La primera es el identificador de la variable a cuya derecha se escribe el signo igual (=). La segunda parte es la expresión ciyo valor se quiere almacenar en la zona que referencia el nombre de la variable. Para la gesti n operativa de la sentencia se siguen los siguientes pasos: • Se evalúa la expresión de la derecha del signo igual. • Se almacena el resultado de la evaluación anterior en la variable.

Debe tenerse en cuenta que no se pueden asignar datos de cadena a una variable de tipo numérico; ni asignar dígitos a una variable de tipo cadena a no ser que se les limite por comillas ( “ ); ni asignar valores reales a variables enteras. Los siguientes son ejemplos de asignación de valores a variables. Altura = 12.30 Base = 10.80 Area = Base * Altura En los ejemplos se asigna el valor 12.30 a la variable Altura, 10.80 a la variable Base (en ambos casos los valores son literales numéricos) y el valor que devuelve la expresión Base * Altura a la variable Area. EXPRESIONES Y OPERACIONES ARITMÉTICAS Una expresión es la unión de operadores y operandos. Los operadores realizan una función sobre los operandos y la unidad aritmético-lógica devuelve el valor generado. Las expresiones pueden ser numéricas o de cadena, según los operan- dos y el valor que las mismas devuelven. Las expresiones numéricas éstán compuestas de operandos que son susceptibles de realizar cálculos con ellos y de operadores aritméticos. Las expresiones de cadena constan de operandos de tipo cadena y de operadores que actúan sobre ellas, por ejemplo el signo más (+) como operador de concatenación. Operadores aritméticos Los operadores aritméticos actúan sobre operandos numéricos y devuelven el resultado de la operación. Son, por orden de prioridad al evaluar la expresión, los siguientes: () paréntesis, como prioridad máxima sobre otros operadores de la expresión A exponenciación para el cálculo de potencias

Page 28: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 28 

 

- negación de resultados (valores opuestos a los devueltos por la expresión) *,/ producto o cociente real (prioridad para el situado más a la izquierda) / cociente entero mod módulo o resto de la división entera +,- suma o resta (prioridad para el situado más a la izquierda) Los operadores aritméticos \ y mod La división entera que se consigue con el operador \ devuelve la parte entera del cociente de dos números. Y el operador mod devuelve el resto de la división entera. Reglas de evaluación de expresiones (prioridad) Las expresiones aritméticas se evalúan teniendo en cuenta las reglas de precedencia que se describen en el apartado operadores aritméticos. Como resumen se puede decir que: • Los paréntesis establecen prioridad para las expresiones que encierran. • El operador de negación afecta a toda la expresión a la que precede. • Operadores de la misma jerarquía tienen prioridad sobre los demás situados más a

la izquierda en la expresión. En la siguiente expresión 4 * 5 - 12 mod 3 * 2 + 8 se evalúa en las siguientes etapas: 1° 4 * 5 = 20 La expresión resultante es 20 - 12 mod 3 * 2 + 8 2° 3 * 2 = 6 La expresión resultante es ahora 20 - 12 mod 6 + 8 3° 12 mod 6 = 2 La expresión resultante es ahora 20 – 2 + 8 4° 20 – 2 = 18 La expresión resultante es ahora 18 + 8 5° 18 + 8 = 26 El resultado final de la evaluación es 26 Escritura de fórmulas matemáticas en Visual Basic La conversión de expresiones en formato algebraico en el momento de la codificación supone cierta transformación que habrá de tenerse en cuenta. • Los denominadores de fracciones algebraicas deben ir encerrados entre paréntesis

y precedidos del operador de división real ( / ). Así, ___X__ deberá codificarse x / (y - z) Y - Z

Page 29: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 29 

 

• Deberá tenerse muy en cuenta cerrar bien los paréntesis que se pongan para establecer prioridades porque si no es así, se producirá error, o un resultado que no es el previsto.

OPERACIONES DE ENTRADA/SALIDA Los procesos precisan, en su mayoría, la introducción de información desde un periférico de entrada (normalmente, el teclado) y la salida de los resultados conseguidos, a través de otro periférico. Estos procesos reciben el nombre genérico de procesos de Entrada/Salida (la escritura de resultados y lectura de los datos que se van a procesar). La escritura de resultados (salida) La salida de resultados se consigue por medio d diferentes métodos que tiene diseñados Visual Basic. Estos son los métodos Print, Write, Put, MsgBox y otros, y la modificación de la propiedad Caption de determinados controles. La manipulación de estos métodos se verán en el momento oportuno.

Figura 2.1. Salida de mensajes por medio de MsgBox Impresión de resultados (salidas a impresora) De igual forma, la salida de informes generados a través de la impresora se consigue ejecutando los apropiados métodos de gestión de impresión y de impresoras. Una de las herramientas más útiles de Visual Basic en su versión 6.0 es la del diseñador de informes (Microsoft Data Report) a través del cual se pueden diseñar informes para listados u otros formatos de los datos de las tablas de bases de datos que se especifiquen ver la Figura 2.2.

Page 30: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 30 

 

Figura 2.2. Ventana del editor de informes Microsoft Data Report La lectura de datos (entrada) La introducción de información al proceso de modo que el usuario pueda actuar con la aplicación, se consigue por medio de cuadros de diálogo que generan las funciones de entrada como MsgBox, InputBox e InputBox$, o por medio de las sentencias de lectura (en el caso de lectura desde archivos) como Input, Input$ o Get. Las siguientes figuras muestran diferentes modos de introducir información a la aplicación para su proceso.

Figura 2.3. Cuadro de diálogo input$

En esta primera figura se le pide al usuario su D.N.I. (Documento Nacional de Identidad, en España) para que pueda introducirlo y una vez pulsado el botón Aceptar se almacene en la variable que recibe el valor devuelto por la función InputBox$. La Figura 2.4 muestra un nuevo mensaje en el que se ha incluido el D.N.I. que ha introducido el usuario para que le dé su confirmación.

Figura 2.4. Función MsgBox

Page 31: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 31 

 

Por último, dependiendo de la confirmación o no del usuario, se emiten los correspondientes mensajes (Figs. 2.5 y 2.6).

Figura 2.5. Mensaje cuando el usuario confirma el dato

Figura 2.5. Mensaje cuando no se ha confirmado el dato El código fuente que ha generado esta salida es el siguiente: Private Sub ‘Declaración de las variables que se van a utilizar Dim Respuesta As String Dim Valor As Integer ‘Asignación a la variable Respuesta del valor devuelto Respuesta = Ucase$(InputBox$(”Su C.C.”, “Datos del usuario”)) ‘Asignación a la variable Valor del valor devuelto Valor = MsgBox(”Su C.C. es “ & Respuesta, vbyesNoCancel, “Confirme dato”) ‘Estructura selectiva alternaEiva para el siguiente mensaje If Valor = vbYes Then MsgBox “Correcto”, vbcritical, “Mensaje” Else MsgBox “Deberá introducir su D.N.I. de nuevo”, vbCritical, “Mensaje” End If End Sub

Page 32: Guia Practica de Visual Basic 6.0

GUIA PRACTICA DE VISUAL BASIC 6.0 20 de mayo de 2007 

 

 32 

 

Como se puede observar en el listado anterior, la gestión de las entradas y salidas en Visual Basic son muy sencillas. Las dos siguientes líneas usan MsgBox como sentencia sin esperar que se devuelva valor alguno aunque se pulse el botón aceptar que presentan. MsgBox “Correcto”, vbCritical, “Mensaje” MsgBox “Deberá introducir su D.N.I. de nuevo”, vbcritical, “Mensaje” Sin embargo, las dos líneas siguientes utilizan funciones que, si se aceptan o no se aceptan, devuelven, indefectiblemente, un valor o bien de cadena (a la variable Respuesta) o bien numérico (a la variable Valor). ‘Asignación a la variable Respuesta del valor devuelto Respuesta = UCase$(InputBox$(”Su D.N.I.”, “Datos del usuario”)) ‘Asignación a la variable Valor del valor devuelto Valor = MsgBox (”Su D.N.I. es “ & Respuesta, vbyesNoCancel, “Confirme dato”) Por eso ha sido preciso definir previamente las variables Respuesta y Valor como de tipo String e Integer, respectivamente, en consonancia con el valor que deben recibir de las funciones InputBox$ y MsgBox. ‘Declaración de las variables que se van a utilizar Dim Respuesta As String Dim Valor As Integer