Visual Basic 6.0-Guia 1.pdf

Embed Size (px)

Citation preview

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    1/16

    Ing. Raymond Marquina 1

    VISUAL BASIC 6

    NIVEL 1

    GUIA 1

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    2/16

    Ing. Raymond Marquina 2

    Introduccin

    Visual Basic es hoy el lenguaje de programacin mas popular del mundo. Es el sueo delprogramador de aplicaciones. Es un producto con una interfaz grafica de usuario para crearaplicaciones para Windows basado en el lenguaje Basic y en la programacin orientada a objetos

    La palabra Visual hace referencia al mtodo que se utiliza para crear la interfaz graficade usuario. En lugar de escribir numerosas lneas de cdigo para implementar una interfaz, seutiliza el ratn para arrastrar y colocar los objetos prefabricados al lugar deseado dentro de unformulario.

    La palabra Basic hace referencia al BASIC (Beginners All-Purpose Simbolic InstructionCode), un lenguaje utilizado por ms programadores que ningn otro lenguaje en la historia dela informtica. Visual Basic ha evolucionado a partir del lenguaje BASIC original y ahoracontiene centenares de instrucciones, funciones y palabras clave, muchas de las cuales estndiferectamente relacionadas con la interfaz grafica de Windows.

    Es importante saber tambien, que la inversin realizada en el aprendizaje de VisualBasic le ayudara a abarcar otras reas, porque este lenguaje de programacin no es exclusivo dela aplicacin Visual Basic. Este lenguaje es utilizado tambin por Microsoft Excel, MicrosoftAccess y muchas otras aplicaciones Windows. El sistema de Visual Basic Sript para programaren Internet, tambin es subconjunto del lenguaje Visual Basic.

    ESTILOS DE PROGRAMACIN

    Se entiende por estilos de programacin los mtodos que existen para mejorar la calidadde los programas de computacin. Y cuales son las caractersticas de un buen programa?.

    Vamos a exponer algunas respuestas:

    1. El programa debe funcionar. La caracterstica mas simple e importante de un programa esque funcione

    2. El programa no debe tener dificultades. Hay que anticiparse a las situaciones particulares enlas cuales va a emplearse el programa con el fin de evitar errores. Es responsabilidad delprogramador asegurar que el programa este libre de errores.

    3. El programa debe estar bien documentado. La documentacin es necesaria para ayudar a

    comprender o a utilizar un programa. La documentacin puede realizarse de dos formas:la documentacin externa, que incluye diagramas de flujo, descripciones de losalgoritmos, etc. Y la documentacin interna, o comentarios en el propio prgrama. Ladocumentacin externa esta dirigida a los usuarios del programa, esencialmente. Ladocumentacin interna esta dirigida totalmente al programador.

    FASES DEL PROCESO DE PROGRAMACIN

    1. Anlisis del problema: Esto es, conocer el problema antes de proceder a desarrollar lasolucin.

    2. Desarrollo de la solucin: Hay una desafortunada tendencia por parte de muchosprogramadores a sucumbir al engaoso atractivo de la maquina, iniciando la fase deconstruccin e instalacin antes de que el problema haya sido resuelto realmente.

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    3/16

    Ing. Raymond Marquina 3

    3. Construccin de la solucin en forma de programa: Este proceso es completamente

    mecnico, ya que consiste en la construccin en forma de programa real de la solucindesarrollada.

    4. Prueba: Todo programador experto prueba mentalmente cada instruccin cuando la estaescribiendo, y simula, tambin mentalmente, la ejecucin de cualquier modulo o seccionde su programa antes de proceder a realizar una prueba real de la etapa.

    5. Documentacin: Es imprescindible para la manipulacin del programa, asi como parasu mantenimiento.

    PROGRAMACIN ORIENTADA A OBJETOS

    La programacin orientada a objetos (POO) es una forma de programacin que utiliza

    objetos, ligados mediante mensajes, para la solucin de problemas. Puede considerarse como unaextensin natural de la programacin estructurada en un intento de potenciar los conceptos demodularidad y reutilizacin de cdigo.

    Mecanismos Bsicos de la POO

    Los mecanismos bsicos de la programacin orientada a objetos (POO) son: Objetos, Mensajes,Mtodos , Propiedades y Eventos.

    Objetos

    Un programa tradicional se compone de procedimientos y de datos. Un programa orientado a

    objetos se compone solamente de objetos. Un objeto es una encapsulacion genrica de datos y delos procedimientos para manipularlos. Dicho de otra forma, un objeto es una entidad que tieneunos atributos particulares, las propiedades, y unas formas de operar sobre ellas, los mtodos.Por lo tanto, un objeto contiene, por una parte, operaciones que definen su comportamiento, ypor otra, variables manipuladas por esas operaciones que definen su estado.

    Mensajes

    Cuando se ejecuta un programa orientado a objetos, los objetos estan recibiendo, interpretando yrespondiendo a mensajes de otros objetos. Esto marca una clara diferencia con respecto a loselementos de datos pasivos de los sitemas tradicionales. Por ejemplo, en Visual Basic un mensajeesta asociado con un procedimiento, de tal forma que cuando un objeto recibe un mensaje la

    respuesta a ese mensaje es ejecutar el procedimiento asociado. Este procedimiento recibe elnombre de metodo.

    Mtodos

    Un metodo se implementa en una clase de objetos y determina como tiene que actuar el objetocuando recibe un mensaje. En adicion, las propiedades permitiran almacenar informacin paradicho objeto. Un metodo puede tambin enviar mensajes a otros objetos solicitando una accion oinformacin.

    Propiedades

    Las propiedades de un objeto definen la manera en que dicho objeto se ve y se comporta

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    4/16

    Ing. Raymond Marquina 4

    Eventos

    Visual Basic es un lenguaje de programacin controlado por eventos. Esto significa que elcdigo se ejecutara en respuesta a algo que ocurre. Por ejemplo, si hace clic en un botn durantela ejecucin del programa, se generara un evento Clic y se ejecutara automticamente el cdigoque le corresponde.

    ProcedimientosLa primera lnea del cdigo, la cual Visual Basic escribi por usted, comienza con las palabrasPrivate Sub. Sub es una palabra clave que indica que ah comienza un procedimiento. Unprocedimiento es cdigo dedicado a una accin en particular. La ultima lnea del cdigo(tambin escrita por Visual Basic) esEnd Sub, que indica el final del procedimiento.

    VISUAL BASIC 6.0

    Los objetos de Visual Basic estan encapsulados, es decir, contienen su propio cdigo ysus propios datos.

    Los objetos de Visual Basic tienen propiedades, mtodos y eventos. Al conjunto de propiedades y mtodos se les llama Interfaz. Ademas de su interfaz

    predeterminada, los objetos pueden implementar interfaces adicionales para

    proporcionar polimorfismo.

    Requerimientos Mnimos De Instalacin

    Microprocesador Pentium 100 Mhz o superior Disco duro con un espacio mnimo disponible de 100Mb Unidad de CD-ROM Un ratn 32 Mb de memoria RAM o mas Microsoft Windows 95 o posterior

    Nombre del ObjetoNombre del Evento

    Ventana Cdigo

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    5/16

    Ing. Raymond Marquina 5

    ENTORNO DE DESARROLLO DE VISUAL BASIC

    Cuando se arranca Visual Basic 6, usted podr ver una interfaz similar a la de la figura que semuestra a continuacin:

    Barra de Mens: Visualiza las ordenes que usted utiliza para desarrollar una aplicacin.

    Menus Contextuales: Un menu contextual es un menu flotante que presenta ordenesespecificas realtivas a un determinado objeto.

    Barra de Herramientas: Facilita un acceso rapido a las ordenes mas comnmenteutilizadas. Las barras de herramientas se pueden acoplar debajo de la barra de menus opueden flotar si selecciona el tirador vertical del borde izquierdo y la arrastra fuera dellugar debajo de la barra de menus.

    Explorador de Proyectos: Esta ventana contiene la lista de los ficheros que componen elproyecto actual.

    Ventana de Propiedades: Cada objeto lleva asociado un conjunto de propiedades(nombre, posicin, tamao, color, etc). Para ver o especificar los valores de laspropiedades de un objeto, utilizaremos la ventana de propiedades .

    Caja o cuadro de herramientas: Proporciona un conjunto de herramientas que permitencolocar los controles en el formulario durante el diseo de la interfaz grafica del usuario.Observe que hay una ficha, denominada General, predeterminada. Esto significa queuna caja de herramientas puede tener varias fichas. Puede crear su propia ficha si ejecuta

    Barra de Mens Barra de Herramientas

    Explorador de

    Proyectos

    Ventana de

    Propiedades

    Formulario

    Ventana de Posicin

    de FormularioCaja de

    Herramientas

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    6/16

    Ing. Raymond Marquina 6

    la orden la orden agregar ficha del menu contextual a aade los controles a la ficharesultante.

    Formulario: Es la ventana sobre la que colocaremos los controles de la interfaz graficaque el usuario utilizara para comunicarse con la aplicacin. Cada formulario de la

    aplicacin tiene su propia ventana diseador de formulario.

    Ventana de posicin de formulario: Esta ventana le permite colocar los formularios de suaplicacin utilizando una pequea representacin grafica de la pantalla. Si visualiza elmenu contextual de esta ventana y ejecuta la orden Guias de Resolucin, observaraque se pintan unas lineas que delimitan la pantalla para cuando la resolucin sea de640x480 pixeles.

    MI PRIMERA APLICACIN

    Suponiendo que ya hemos arrancado Visual Basic, Cul es el siguiente paso para desarrollar unaaplicacin Windows? En general, para construir una aplicacin siga los pasos indicados acontinuacin:

    1. Cree una nueva aplicacin (nuevo proyecto)2. Ajuste el tamao por defecto del formulario3. Dibuje los controles4. Defina las propiedades del formulario5. Escriba el cdigo para cada uno de los objetos6. Guarde la aplicacin7. Verifique la aplicacin8. Cree un archivo ejecutable

    Crear una nueva aplicacinCuando arranca Visual Basic, aparece una ventana como la siguiente:

    Esta ventana tiene tres pestaas que hacen referencia al proyecto: Nuevo, Existente y reciente

    que vamos a abrir. La pagina Nuevo tiene un grupo de iconos, que se corresponden conplantillas de proyectos. Elija la planilla seleccionada por omisin, EXE estndar, y pulse el botnAceptar.

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    7/16

    Ing. Raymond Marquina 7

    Una aplicacin Visual Basic esta formada generalmente por los siguientes tipos de ficheros:mdulos de formularios (.frm), mdulos estndar (.bas), mdulos de clases (.cls), archivosbinarios (.bin) y ficheros de recursos (.frx). la lista de archivos que componen la aplicacin juntocon las opciones (el conjunto de opciones lo puede ver ejecutando la orden Opciones del MenHerramientas) es guardada en un archivo de proyecto con extensin .vbp cada vez que se guarda

    la aplicacin o proyecto. As mismo, el espacio de trabajo del proyecto Visual Basic se guarda enun fichero con extensin .vbw

    Creacin o dibujo de los controles de un formularioEn Visual Basic disponemos fundamentalmente de dos tipos de objetos: ventanas y controles.Un formulario es una ventana sobre la que nosotros dibujamos los elementos que el usuariotiene que utilizar para comunicarse con la aplicacin. Los elementos son los controles; esto es,objetos grficos que permiten entrar o salir datos: por ejemplo, cajas de texto, botones,etiquetas, marcos, listas y temporizadores. El formularios mas los controles forman la interfaz omedio de comunicacin.Para aadir un control a un formulario, utilizaremos la caja de herramientas que se muestra en

    la figura siguiente. Cada herramienta de la caja crea un nico control.

    El puntero se utiliza para manipular los controles existentes sobre el formulario.

    Una caja de imagen se utiliza normalmente para presentar grficos, para que actu comocontenedor de otros controles y para presentar texto mediante el mtodo print.

    Utilizaremos una etiqueta cuando queramos un texto, de una o mas lineas que no pueda sermodificado por el usuario.

    Una caja de texto es un rea dentro del formulario en la que el usuario puede escribir o visualizartexto.

    Un marco se utiliza para realzar el aspecto del formulario.

    Puntero

    Etiqueta

    Marco

    Casilla de Verificacin

    Lista desplegable

    Barra de desplaz. horiz..

    Temporizador

    Lista de Directorios

    Figuras

    Imagen

    OLE

    Caja de Imagen

    Caja de Texto

    Botn de Pulsacin

    Botn de Opcion

    Lista

    Barra de desplaz. vertical

    Lista de unidad de disco

    Lista de ficheros

    Linea

    Datos

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    8/16

    Ing. Raymond Marquina 8

    Un botn de pulsacin tiene asociada una orden con el. Esta orden se ejecuta cuando el usuariohace clic sobre el.

    Una casilla de verificacin se utiliza para seleccionar una opcin. De esta forma se puedenseleccionar varias opciones de un grupo

    El control botn de opcin se utiliza para seleccionar una sola opcin de entre varias. De estaforma solo se puede seleccionar una sola opcin de un grupo de ellas.

    La barra de desplazamiento horizontal y vertical, permiten seleccionar un valor dentro de unrango de valores.

    El temporizador permite activar procesos a intervalos regulares

    La lista de unidades de disco se utiliza para visualizar la lista de unidades disponibles con el finde seleccionar una

    La lista de directorios se utiliza para visualizar los directorios a los que el usuario puede moverse

    El control figuras se utiliza para dibujar rectngulos, cuadrados, elipses o circulos.

    El control lnea se utiliza para dibujar lneas rectas en un formulario

    El control imagen se utiliza para presentar grficos en los siguientes formatos: bmp, iconos,meta-archivos, JPEG o GIF.

    El control de datos le permite conectarse a una base de datos existente y visualizar suinformacin en el formulario

    Borrar un control

    Para borrar un control, primero se selecciona haciendo clic sobre el, y a continuacin se pulsa latecla Supr (Del).

    Bloquear la posicin de todos los controlesUna vez que se haya ajustado el tamao de los objetos y haya situado los controles en su posicindefinitiva, puede seleccionar el formulario y bloquear sus controles para que no puedan sermovidos accidentalmente. Para ello, ejecute la orden Bloquear controles del Menu Formato.

    1.5 EJEMPLOS

    El entorno de programacin de Visual Basic 6.0 ofrece muchas posibilidades de adaptacin a losgustos, deseos y preferencias del usuario. Los usuarios expertos tienen siempre una forma propiade hacer las cosas, pero para los usuarios noveles conviene ofrecer unas ciertas orientaciones alrespecto. Por eso, antes de realizar los ejemplos que siguen se recomienda modificar laconfiguracin de Visual Basic 6.0 de la siguiente forma:1. En el men Herramientas elegir el comando Opciones; se abre un cuadro de dilogo con 6

    solapas.2. En la solapa Entorno elegir Preguntar si se guardan los cambios en Cuando se inicie un

    Programa para que pregunte antes de cada ejecucin si se desean guardar los cambiosrealizados. En la solada Editor elegir tambin Requerir declaracin de variables enOpciones de Cdigo para evitar errores al teclear los nombres de las variables.

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    9/16

    Ing. Raymond Marquina 9

    3. En la solapa Editor, en Opciones de Cdigo, dar a Ancho de Tabulacin un valor de 4 yelegir la opcin Sangra Automtica (para que ayude a mantener el cdigo legible yordenado). En Opciones de Ventana elegir Ver modulo completo de formapredeterminada (para ver todo el cdigo de un formulario en una misma ventana) ySeparador de Procedimientos (para que separe cada funcin de las dems mediante una

    lnea horizontal).

    Ejemplo desarrollado 1.1: Sencillo programa de colores y posiciones

    En la Figura 1.2 se muestra el formulario y los controles de un ejemplo muy sencillo quepermite mover una caja de texto por la pantalla, permitiendo a su vez representarla con cuatrocolores diferentes. En la Tabla 1.2 se describen los controles utilizados, as como algunas de suspropiedades ms importantes (sobre todo las que se separan de los valores por defecto). Losficheros de este proyecto se llamarn Colores0.vbp y Colores0.frm.

    A continuacin se muestra el cdigo correspondiente a los procedimientos de este ejemplo.

    Option ExplicitPrivate Sub Form_Load()txtCaja.Top = 0End Sub

    Private Sub optArriba_Click()txtCaja.Top = 0End SubPrivate Sub optAbajo_Click()

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    10/16

    Ing. Raymond Marquina 10

    txtCaja.Top = frmColores0.ScaleHeight - txtCaja.HeightEnd SubPrivate Sub optAzul_Click()txtCaja.BackColor = vbBlueEnd SubPrivate Sub optRojo_Click()txtCaja.BackColor = vbRed

    End SubPrivate Sub optVerde_Click()txtCaja.BackColor = vbGreenEnd SubPrivate Sub optAmarillo_Click()txtCaja.BackColor = vbYellowEnd Sub

    Sobre este primer programa en Visual Basic 6.0 se pueden hacer algunos comentarios:

    1. El comando Option Explicit sirve para obligar a declarar todas las variables que se utilicen.Esto impide el cometer errores en los nombres de las variables (confundir masa con mesa,por ejemplo). En este ejemplo esto no tiene ninguna importancia, pero es conveniente

    acostumbrarse a incluir esta opcin. Declarar una variable es crearla con un nombre y de untipo determinado antes de utilizarla.

    2. Cada una de las partes de cdigo que empieza con un Private Sub y termina con un End Subes un procedimiento, esto es, una parte de cdigo independiente y reutilizable. El nombre deuno de estos procedimientos, por ejemplo optAzul_Click(), es tpico de Visual Basic. Laprimera parte es el nombre de un objeto (control); despus va un separador que es el carcterde subrayado (_); a continuacin el nombre de un evento -click, en este caso-, y finalmenteunos parntesis entre los que iran los argumentos, en caso de que los hubiera.

    3. Es tambin interesante ver cmo se accede desde programa a la propiedad backColor de lacaja de texto que se llama txtCaja: se hace utilizando el punto en la formatxtCaja.BackColor. Los colores se podran tambin introducir con notacin hexadecimal

    (comenzando con &H, seguidos por dos dgitos entre 00 y FF (es decir, entre 0 y 255 enbase 10) para los tres colores fundamentales, es decir para el Red, Green y Blue (RGB), dederecha a izquierda. Aqu se han utilizado las constantes simblicas predefinidas en VisualBasic 6.0: vbRed, vbGreen y vbBlue

    4. Recurdese que si se desea que el cdigo de todos los eventos aparezca en una mismaventana hay que activar la opcin Ver Modulo completo en forma predeterminada en lasolapa Editor del Menu Herramientas / Opciones. Tambin puede hacerse directamente enla ventana de cdigo con uno de los botones que aparecen en la parte inferior izquierda ( ).

    5. Es muy importante crear primero el control frame y despus, estando seleccionado, colocarlos botones de opcin en su interior. No sirve hacerlo a la inversa. Visual Basic supone quetodos los botones de opcin que estn dentro del mismo frame forman parte del mismo

    grupo y slo permite que uno est seleccionado.

    Ejemplo 1.2: Minicalculadora elemental

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    11/16

    Ing. Raymond Marquina 11

    En este ejemplo se muestra una calculadora elemental que permite hacer las cuatro operacionesaritmticas (Figura 1.3). Los ficheros de este proyecto se pueden llamar minicalc.vbp yminicalc.frm. El usuario introduce los datos y clica sobre el botn correspondiente a la operacinque desea realizar, apareciendo inmediatamente el resultado en lacaja de texto de la derecha. La Tabla 1.3 muestra los objetos y las propiedades ms importantes

    de este ejemplo.

    A continuacin se muestra el cdigo correspondiente a los procedimientos que gestionan loseventos de este ejemplo.

    Option ExplicitPrivate Sub cmdDiv_Click()txtResult.Text = Val(txtOper1.Text) / Val(txtOper2.Text)lblOp.Caption = "/"End SubPrivate Sub cmdProd_Click()txtResult.Text = Val(txtOper1.Text) * Val(txtOper2.Text)lblOp.Caption = "*"End Sub

    Private Sub cmdResta_Click()txtResult.Text = Val(txtOper1.Text) - Val(txtOper2.Text)lblOp.Caption = "-"End SubPrivate Sub cmdSuma_Click()txtResult.Text = Val(txtOper1.Text) + Val(txtOper2.Text)lblOp.Caption = "+"End Sub

    En este ejemplo se ha utilizado repetidamente la funcin Val() de Visual Basic. Esta funcin

    convierte una serie de caracteres numricos (un texto formado por cifras) en el nmero entero ode punto flotante correspondiente. Sin la llamada a la funcin Val() el operador + aplicado acadenas de caracteres las concatena, y como resultado, por ejemplo, 3+4 dara 34. No es lo

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    12/16

    Ing. Raymond Marquina 12

    mismo los caracteres 1 y 2 formando la cadena o string 12 que el nmero 12; la funcinval() convierte cadenas de caracteres numricos con los que no se pueden realizar operacionesaritmticas- en los nmeros correspondientes con los que s se puede operar matemticamente-.Visual Basic 6.0 transforma de modo automtico nmeros en cadenas de caracteres y viceversa,pero este es un caso en el que dicha transformacin no funciona porque el operador + tiene

    sentido tanto con nmeros como con cadenas.

    Ejemplo 1.3: Transformacin de unidades de temperatura

    La Figura 1.4 muestra un programa sencillo que permite ver la equivalencia entre las escalas detemperaturas en grados centgrados y grados Fahrenheit. Los ficheros de este proyecto se puedenllamar Temperat.vbp y Temperat.frm. En el centro del formulario aparece una barra dedesplazamiento vertical que permite desplazarse con incrementos pequeos de 1 C y grandes de10 C. Como es habitual, tambin puede cambiarse el valor arrastrando con el ratn el cursor dela barra. Los valores mximos y mnimo de la barra son 100 C y -100 C. A ambos lados de labarra aparecen dos cuadros de texto (color de fondo blanco) donde aparecen los grados

    correspondientes a la barra en ambas escalas. Encima aparecen dos rtulos ( labels) que indican laescala de temperaturas correspondiente. Completan la aplicacin un botn Salir que termina laejecucin y un men File con la nica opcin Exit, que termina asimismo la ejecucin delprograma. La Tabla 1.4 indica los controles utilizados en este ejemplo junto con las propiedadesy los valores correspondientes.

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    13/16

    Ing. Raymond Marquina 13

    Por otra parte, el cdigo con el que este programa responde a los eventos es el contenido en

    los siguientes procedimientos:

    Option ExplicitPrivate Sub cmbSalir_Click()BeepEndEnd SubPrivate Sub mnuFileExit_Click()EndEnd SubPrivate Sub vsbTemp_Change()txtCent.Text = vsbTemp.ValuetxtFahr.Text = 32 + 1.8 * vsbTemp.ValueEnd Sub

    Sobre este tercer ejemplo se puede comentar lo siguiente:

    1. Se ha utilizado la propiedad Value de la barra de desplazamiento, la cual da el valor actualde la misma con respecto a los lmites inferior y superior, previamente establecidos (-100 y100).

    2. Mediante el procedimiento cmdSalir_Click, se cierra el programa, gracias a la instruccinEnd. El cometido de Beep no es otro que el de emitir un pitido a travs del altavoz delordenador, que indicar que en efecto se ha salido del programa.

    3. La funcin mnuFileExit_Click() y activa desde el men y termina la ejecucin sin emitirningn sonido.

    4. Finalmente, la funcin vsbTemp_Change() se activa al cambiar el valor de la barra dedesplazamiento; su efecto es modificar el valor de la propiedad text en las cajas de texto quemuestran la temperatura en cada una de las dos escalas.

    Ejemplo 1.4: Colores RGB

    La Figura 1.5 muestra el formulario y los controles del proyecto Colores. Los ficheros de esteproyecto se pueden llamar Colores.vbp y Colores.frm. En este ejemplo se dispone de tres barrasde desplazamiento con las que pueden controlarse las componentes RGB del color del fondo ydel color del texto de un control label. Dos botones de opcin permiten determinar si los valoresde las barras se aplican al fondo o al texto. Cuando se cambia del texto al fondo o viceversa los

    valores de las barras de desplazamiento (y la posicin de los cursores) cambian de modo acorde.

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    14/16

    Ing. Raymond Marquina 14

    A la derecha. de las barras de desplazamiento tres cajas de texto contienen los valores numricosde los tres colores (entre 0 y 255). A la izda. Tres labels indican los colores de las tres barras. LaTabla 1.5 muestra los controles y las propiedades utilizadas en el este ejemplo.

    Una caracterstica importante de este ejemplo es que se han utilizado vectores (arrays) decontroles. Las tres barras se llaman hsbColor y se diferencian por la propiedad Index, que toma

    los valores 0, 1 y 2. Tambin las tres cajas de texto, las tres labels y los dos botones de opcinsonarrays de controles. Para crear un array de controles basta crear el primero de ellos y luegohacer Copy y Paste tantas veces como se desee, respondiendo afirmativamente al cuadro dedilogo que pregunta si desea crear un array.

    Elprocedimiento Sub que contiene el cdigo que gestiona un evento de un array es nico paratodo el array, y recibe como argumento la propiedad Index. De este modo que se puede saberexactamente en qu control del array se ha producido el evento. As pues, una ventaja de los

    arrays de controles es que pueden compartir el cdigo de los eventos y permitir un tratamientoconjunto por medio de buclesfor.

    A continuacin se muestra el cdigo correspondiente a los procedimientos que tratan los eventosde este ejemplo.

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    15/16

    Ing. Raymond Marquina 15

    Option ExplicitPublic Brojo, Bverde, Bazul As IntegerPublic Frojo, Fverde, Fazul As IntegerPrivate Sub cmdSalir_Click()EndEnd SubPrivate Sub Form_Load()

    Brojo = 0Bverde = 0Bazul = 0Frojo = 255Fverde = 255Fazul = 255lblCuadro.BackColor = RGB(Brojo, Bverde, Bazul)lblCuadro.ForeColor = RGB(Frojo, Fverde, Fazul)End SubPrivate Sub hsbColor_Change(Index As Integer)If optColor(0).Value = True ThenlblCuadro.BackColor = RGB(hsbColor(0).Value, hsbColor(1).Value, _hsbColor(2).Value)Dim i As IntegerFor i = 0 To 2

    txtColor(i).Text = hsbColor(i).ValueNext iElselblCuadro.ForeColor = RGB(hsbColor(0).Value, hsbColor(1).Value, _hsbColor(2).Value)For i = 0 To 2txtColor(i).Text = hsbColor(i).ValueNext iEnd IfEnd SubPrivate Sub optColor_Click(Index As Integer)If Index = 0 Then Se pasa a cambiar el fondoFrojo = hsbColor(0).ValueFverde = hsbColor(1).ValueFazul = hsbColor(2).Value

    hsbColor(0).Value = BrojohsbColor(1).Value = BverdehsbColor(2).Value = BazulElse Se pasa a cambiar el textoBrojo = hsbColor(0).ValueBverde = hsbColor(1).ValueBazul = hsbColor(2).ValuehsbColor(0).Value = FrojohsbColor(1).Value = FverdehsbColor(2).Value = FazulEnd IfEnd Sub

    El cdigo de este ejemplo es un poco ms complicado que el de los ejemplos anteriores y

    requiere unas ciertas explicaciones adicionales adelantando cuestiones que se vernposteriormente:1. La funcinRGB() crea un cdigo de color a partir de sus argumentos: las componentes RGB

    (Red, Green and Blue). Estas componentes, cuyo valor se almacena en un byte y puede oscilarentre 0 y 255, se determinan por medio de las tres barras de desplazamiento.

    2. El color blanco se obtiene con los tres colores fundamentales a su mxima intensidad. Elcolor negro se obtiene con los tres colores RGB a cero. Tambin se pueden introducir con lasconstantes predefinidasvbWhite yvbBlack, respectivamente.

    3. Es importante disponer de unasvariables globales que almacenen los colores del fondo y deltexto, y que permitan tanto guardar los valores anteriores de las barras como cambiar stas asus nuevos valores cuando se clica en los botones de opcin. Las variables globales, definidas

    en la parte de definiciones generales del cdigo, fuera de cualquier procedimiento, sonvisibles desde cualquier parte del programa. Las variables definidas dentro de una funcin o

  • 7/13/2019 Visual Basic 6.0-Guia 1.pdf

    16/16

    Ing. Raymond Marquina 16

    procedimiento slo son visibles desde dentro de dicha funcin o procedimiento (variableslocales).

    4. La funcinhsbColor_Change(Index As Integer) se activa cada vez que se cambia el valor enuna cualquiera de las barras de desplazamiento. El argumento Index, que Visual Basicdefine automticamente, indica cul de las barras del array es la que ha cambiado de valor

    (la 0, la 1 la 2). En este ejemplo dicho argumento no se ha utilizado, pero est disponiblepor si se hubiera querido utilizar en el cdigo.