INTRODUCCIÓN Visual Basic es una herramienta de desarrollo que permite crear aplicaciones gráficas de forma rápida y muy sencilla. Básicamente se trata de crear ventanas (formularios) y añadir sobre ellas los controles que queramos utilizar. Cada objeto, ya sean controles o formularios, tiene una serie de propiedades y métodos que podremos manipular por código. Este código se ejecutará cuando se produzca un suceso determinado. Mientras ese suceso no se produzca, el código permanecerá inactivo. Los distintos tipos de sucesos que se pueden dar son: • Causados por el usuario (como la pulsación del Mouse, o del teclado). • Causados por el sistema (como el transcurso de un determinado periodo de tiempo,...) • Causados por el código de forma indirecta (suceso Load, Activate...) EL ENTORNO DE DESARROLLO A continuación se hará una visión general sobre los elementos fundamentales que se encuentran en el entorno de desarrollo de Visual Basic. Barra de Menú Desde la Barra de Menú se controla el diseño externo de la aplicación. A través de la barra se podrán añadir formularios (nuevos o existentes) al proyecto, compilar y depurar la aplicación, ... Barra de Herramientas En esta barra aparecen los controles que se pueden insertar en los formularios de nuestras aplicaciones Visual Basic. Es posible agregar más controles a la barra de los que aparecen por defecto, ya que Visual Basic ofrece decenas de librerías e incluso es posible diseñar tus propios controles o descargar controles diseñados por empresas y particulares a través de internet.. Puntero: Se utiliza para seleccionar las variables que estamos o que vamos a programa. PictureBox: Se utiliza para abrir un espacio para poder insertar gráficos. Label: Se utiliza para insertas éticas o títulos dentro del programa. TextBox: Sirve para abrir un espacio en el programa donde vamos a estar mostrando diferentes textos, ejemplo: listados.de alumnos. Frame:se utiliza para hacer divisiones en una misma ventana. CommandButton: Se utiliza para crear un boton de orden. 1 CheckBox: Se utiliza para la creación de un cuadro de verificación. OptionButton: Se utiliza para la creación de un boton de opcion. ComboBox: Sirve para la creación de un cuadro de lista desplegable. ListBox: Sirve para la creación de un cuadro de lista. HScrollBar: Es una barra de desplazamiento horizontal. VScrollBar : Es una barra de desplazamiento vertical. Timer: DriveListBox: Sirve para crear un cuadro de lista de unidades. DirListBox: Sirve para crear un cuadro de lista de directorios. FilelistBox: Sirve para crear un cuadro de lista de archivos. Shape: Sirve para crear rectángulos, cuadrados, elipses y círculos en un formulario. Line: Sirve para crear línes rectas en un formulario. Image: Sirve para crear botones de órdenes gráficos. Data: Sirve para mostrar bases de datos existentes desde su programa. Ventana de Proyecto La ventana de proyecto permitirá controlar todos aquellos elementos y archivos que componen nuestra aplicación. Los archivos que forman el proyecto pueden ser formularios, módulos, módulos de clase, controles de usuario,... Ventana de Propiedades Desde esta ventana será posible modificar las propiedades y características de los controles y formularios de nuestra aplicación. Generalmente las propiedades afectan al aspecto que presentan los elementos, aunque algunas también pueden afectar a su funcionalidad. TIPOS DE DATO Tipo Integer Long Double Date Object Variant Rango de valores −32768 a +32767. Reserva 2 bytes en memoria y redondea hacia arriba. −2147483648 a +2147483648. Reserva 4 bytes y redondea hacia arriba. No redondea, utiliza decimales. Boolean True o False. Fecha / Hora. 8 bytes Es una referencia a un objeto. 4 bytes Almacena datos de cualquiera de los tipos anteriores. 2 Si al declarar una variable no se indica su tipo, se asume como Variant. Definición de una constante Una constante es una zona de memoria referenciada bajo un nombre, que almacena un valor que no puede ser modificado. La sintaxis para declarar una constante es la siguiente: Const Const Nombre Constante Pi Valor 3,1415926535 También se podría declarar de esta manera: Public/Private Const Public Const Nombre Constante Pi As Tipo Valor As Double 3,1415926535 Es una buena costumbre definir todas las constantes globales en un único módulo. Definición de un array Un array es una reserva en memoria de elementos del mismo tipo. Los arrays pueden ser estáticos o dinámicos. Array estático Cuando se declara un array estático ya se definen los elementos que va a contener el array. La reserva de elementos en memoria queda predefinida. Unidimensional: Dim v(6) As Integer 123456 Dim f As double: 78.95 Dim n(15) As string: Jose Fernando Bidimensional: Dim v(1 To 3, 1 To 3) As Integer 1 4 7 2 5 8 3 6 9 Array dinámico 3 Al declarar un array dinámico, los elementos que se reservan en memoria no están predefinidos. Dim v() As Integer Dim x() As integer Para modificar la cantidad de reserva en un array dinámico se hará así: ReDim v(5) ReDim x(10, 10, 10) Cada vez que se realiza ReDim se pierde el contenido del array y se produce otra reserva de memoria. ReDim Preserve v(10) As Integer ReDim Preserve x(10, 10, 15) As Integer La palabra clave Preserve se utiliza para conservar los datos de la matriz existente cuando se cambia el tamaño de la última dimensión. En matrices multidimensionales sólo se podrá modificar el tamaño de la última dimensión. Variables de Visual Basic Características de las variables: Nombres de variables El nombre de una variable debe comenzar por una letra, puede tener una longitud máxima de 255 caracteres y debe ser único dentro de su ámbito. Existen palabras reservadas que no pueden ser utilizadas como nombres de variables: sentencias predefinidas (If, For, ...), nombres de funciones, propiedades de objetos (Caption, Name, ...), tipos (Long, Double, ...) y operadores (And, Or, ...). Tipos de variables Private Una variable declarada dentro de un módulo estará disponible para todos los procedimientos del módulo pero no para el código de otros módulos. Se declaran en la sección Declaraciones, al principio del módulo. Public Para que una variable a nivel de módulo esté disponible para otros módulos utilizaremos la palabra clave Public para declarar la variable. Se declaran en la sección Declaraciones, al principio del módulo. Dim Las variables a nivel de procedimiento sólo se reconocen dentro del procedimiento en que son declaradas. Son consideradas como variables locales. Static 4 Son variables locales al igual que las de tipo Dim. Se diferencian en que las de tipo Dim reinicializan su valor cada vez que se llama al procedimiento, mientras que las de tipo Static conservan su valor (sólo se inicializan la primera vez que se ejecuta el procedimiento). Global Una variable global puede ser utilizada en cualquier procedimiento de la aplicación. Para ello debe ser declarada en un módulo (.BAS). A diferencia de otros lenguajes en Visual Basic no es estrictamente necesario declarar las variables que vamos a utilizar, aunque sí es conveniente y por tanto deberíamos hacerlo siempre. La sintaxis para declarar una variable es la siguiente: Tipo Variable Public Nombre Variable Contador As As Tipo de Dato Integer CONSTRUCCIÓN DE UN PROGRAMA UTILIZANDO VISUAL BASIC Desarrollar una aplicación para Windows utilizando Visual Basic son necesarios seguir tres pasos básicos de programación: • Creación de la interfaz de usuario utilizando los controles de Visual Basic. • Definir las características o propiedades de los elementos de la interfaz de usuario. • Escribir el código asociado con cada uno de los elementos de la interfaz de usuario. Programa Siete afortunado Debera llevar a cabo las siguientes acciones: • Proporcionar una interfaz de usuario que cuenta con los botones Jugar y Fin, 3 ventanas giratorias, un rotulo descriptivo y una ventana que muestre las ganancias. • El programa deberá generar los números aleatorios y mostrarlos en sus respectivas ventanas cuando el usuario pulse el boton jugar. • Mostrar una pila de monedas y pilar cada vez que el número 7 aparezca en una de las ventanas giratorias. • Terminar la ejecución del programa cada vez que el usuario pulse el botón Fin. * Nota: La interfaz de usuario es el conjunto completo de pantallas e imágenes utilizado por un programa. Pasos para realizar el programa: • Despliegue el menú Archivo y seleccione la opción Nuevo proyecto. Visual Basic mostrará un formulario vacío en el centro de la pantalla que le servira para construir su interfaz de usuario. • Pulse el control CommandButton contenido en la caja de herramientas y posteriormente, sitúe el puntero del ratón sobre el formulario. Si pulsa el boton izquierdo del ratón y lo mantiene pulsado mientras arrastra a este dispositivo sobre la mesa, el objeto <<botón de orden>> ira adoptando la forma deseada. Haga este proceso dos veces para crear los botones Jugar y Fin. Se vera algo similar a esto: A estos botones les podemos cambiar el tamaño como lo hacemos en cualquier programa de dibujo. 5 • Ahora creamos las etiquetas de los números, pulse el botón Label contenido en la caja de herramientas , sitúe el puntero del ratón sobre el formulario y realice el mismo proceso anterior, tres veces (puesto que son tres números). • Cree un gran rectángulo justo de los dos botones de órdenes (Hay es donde ira el nombre del programa). • Pulse el boton PictureBox contenido en la caja de herramientas (Esto para crear el espacio donde ubicaremos la imagen), Después de hacer todo esto tendremos algo similar a esto: Ahora empezaremos a definir las propiedades de todo la hecho anteriormente. * Nota: al hacer un clic sobre cualquier objeto que hayamos insertado este se seleccionara, donde podremos modificar su tamaño, su posición y sus propiedades, al hacer doble clic se podra dar la respectiva programación de cada objeto. • Déle un clic sobre cualquier objeto insertado después hacer clic en el botón propiedades incluido en la barra de herramientas. Para los botones Command1 Y Command2: modificaremos la propiedad Caption la cual nos da el nombre del boton, le daremos los nombres de Inicio y Fin respectivamente. Para Label1, Label2, Label3 modificaremos BorderStyle esto para añadir un borde colocándole la opción 1−Fixed Single (Borde Fino), en la propiedad Font que es el tipo de letra ponemos Times New Roman, Negrita, 24 puntos, en caption lo dejaremos vacío. Para Label 4 modificamos las propiedades: Caption=Siete Afortunado, Font= Arial, Negrita, 10 puntos, ForeColor le dará el color =Morado oscuro(&H00400040). Para Picture1(Cuadro de la imagen) modificaremos las opciones de Picture (pondremos el lugar donde estará la imagen que utilizaremos), Visible = False Puesto que solo aparecerá cuando salga cualquier numero siete. El formulario tendrá un aspecto similar a este: Por ultimo vendrá la escritura de los códigos: Como dije anteriormente se hace doble clic al objeto al que le vamos a poner el codigo, aparecera una ventana como esta: En el respectivo lugar de cada botón escribiremos la programación. • Para el botón Fin Le agregaremos la función End la cual detendrá el programa. • Para el botón Jugar agregaremos las siguientes linesas entre las sentencias Private Sub y End Sub: Picture1.Visible=False `Oculta las Monedas 6 Label1.Caption = Int (Rnd * 10) `Calcula los números Label2.Caption = Int (Rnd * 10) Label3.Caption = Int (Rnd * 10) `Si alguna de las etiquétas numericas coincide con un 7 `habrá que mostrar el dibujo y emitir un sonido If(Label1.Caption= 7) or (Label2.Caption= 7) _ (Label3.Caption= 7) Then Picture1.Visible=True Beep End If Una Vez introducido el código, la ventana Código tendrá el siguiente aspecto: Para grabar el programa : • Despliegue el menú Archivo y seleccione la opcion Guardar proyecto como. • Pulse Si cuando Visual Basic le pregunte si desea almacenar los cambios introducidos en Form1. En la pantalla aparecera el cuadro de dialogo denominado Guardar archivo como, tal y como se muestra en la figura siguiente: Para ejecutar el programa pulse el botón inicio contenido en la barra de herramientas. Al dar clic sobre el se ejecutara el programa Siete Afortunado Cuando aparezca cualquier siete en cualquier cuadro, la imagen aparecerá, si no aparece ninguno, la imagen no saldrá. 7