APUNTES DE VISUAL BASIC 6.0 3 - La interface del Vb - El IDE El IDE significa interface de entorno de desarrollo, y se refiere a la interface del propio programa, es decir a las distintas partes que componen el propio Visual Basic para poder desarrollar nuestros proyectos (es el entorno de trabajo). En esta parte, se describirá un pantallazo de las secciones principales de este entorno. Para inicializar el programa, luego de haberlo instalado obviamente, desde el menú inicio > programas > microsoft visual basic 6.0, te podés crear un Acceso directo en tu escritorio para tenerlo mas a mano. En la imagen superior podés ver la barra de controles. Esta barra contiene los controles estándar de Visual Basic. Se los llama estándar porque que son los controles que por defecto añade Visual Basic cuando creamos un programa desde 0. A los controles no estándar, u otro tipo de controles, por ejemplo los creados por nosotros, los que tengamos instalados en el sistema, y demás que se instalan con el VB, hay que agregarlos a mano, es decir uno mismo, esto se hace desde el Menú Componentes o presionando las combinaciones de tecla Ctrl+T. Cuando se agrega un control no estándar, se añade a la barra y ya lo podés utilizar.. Los controles estándar son los controles básicos, por ejemplo los Command Button o botones de comando, Control TextBox o caja de texto, Picture Box o caja de imagen. El control FileListBox para ver archivos, y varios otros que se explican en los siguientes capítulos. La imagen anterior, nos muestra los formularios (ventanas) , módulos de código, y otros tipos de objeto que componen el proyecto que estamos realizando. Desde esta ventana podemos hacer varias operaciones, por ejemplo al seleccionar un formulario, en los botones "Ver Objeto" y "Ver código" en la parte superior, accedemos a la vista de diseño del formulario, mientras que si elegimos Ver código, se abre una ventana que muestra el código de ese formulario seleccionado. También podemos desde esta ventana, Guardar el formulario, eliminarlo y varias otras acciones. 1 Esta otra ventana acoplable que está debajo de la ventana de Proyecto, se llama Ventana de propiedades de Visual Basic. Desde la Ventana de Propiedades podemos modificar las características del objeto o control seleccionado actualmente. Por ejemplo si agrego un formulario y lo selecciono, puedo establecerle el color de fondo, el ancho, alto, el nombre que va a tener para poder identificarlo y muchas otras propiedades. Lo importante que quede claro es que esta ventana cambia cada vez que seleccionamos un objeto o control diferente, si seleccionamos un botón o Command Button, visualizará las propiedades de ese botón, si seleccionamos un formulario las propiedades de ese formulario, si seleccionamos un TextBox, mostrará las propiedades de ese textBox , etc.. Esta es la barra de menues y barra de herramientas de Visual Basic. Para no hacerla pesada y describir todas las opciones ya que no tiene sentido describir todo, desde aquí se puede configurar todo el entorno o IDE, elegir el tipo de proyecto que vamos a crear, ( por ejemplo un programa Exe común , una Dll ActiveX o un Proyecto Ocx), También Compilar el proyecto en un ejecutable, Acceder a la ayuda, (tenés que tener instalados los CD del Msdn), Abrir un proyecto, Guardar, El acceso a los distintos modos y opciones de depuración de errores, y muchas opciones más. 4 - Formularios, propiedades, métodos y eventos En esta parte se realizará un ejemplo simple que consistirá en una ventana o formulario que contendrá un botón, y al presionar este botón nos mostrará o abrirá otra ventana con un mensaje, como las que utiliza windows cuando nos informa sobre algo . Este mensaje visualizará un texto con la descripción "Mi primer programa". Pero antes de realizar este ejercicio veamos un par conceptos básicos necesarios. Formulario Es la ventana o contenedor donde colocamos y agregamos controles de comando , como un botón, una caja de texto, un control de imagen, etc... Cuando hacemos un programa podemos tener varios formularios. Por ejemplo podemos tener un formulario1 con un botón y al presionar este botón hacer aparecer otro formulario en este caso un formulario2. 2 Propiedades: Cuando hablamos de propiedades nos estamos refiriendo a las características que puede tener un control u objeto, por ejemplo: los botones llamados commandbutton tienen una propiedad llamada caption. Esta propiedad establece el texto que va a mostrar el botón en el propio botón. Los formularios también poseen esta propiedad caption y muchos otros controles también la poseen, pero no todos. Otro ejemplo de una propiedad puede ser el color de fondo de un control, el ancho, el alto, el nombre que lleva para poder identificarlos, etc.. En resumen las propiedades, haciendo una comparación, serían como para las personas tener 2 brazos, 2 piernas, el color del pelo, el color de los ojos, el nombre de la persona, donde vive, su código postal, etc... Los Eventos Los controles y objetos poseen Eventos, pero no son todos iguales para todos los controles. Ejemplos de eventos serian: Para un botón: el evento click (cuando lo presionamos), para un formulario: load (este evento se ejecuta cuando se carga el formulario en la memoria), para un textbox o caja de texto: keypress (este evento se dispara cuando presionamos una tecla y el foco está puesto dentro de la caja de texto). Los Métodos Los métodos de un objeto son funciones propias que tiene cada objeto. Por ejemplo los formularios poseen un método llamado show , y lo que hace es cargarlo y hacerlo visible. Para un control combobox este tiene un método llamado additem, y lo que hace es agregar elementos en dicho control. Pero los métodos al igual que las propiedades y eventos, no están presentes en todos los controles de manera igual, es decir algunos objetos y controles pueden compartirlos, pero otros no. Por ejemplo el método Show de los formularios, no lo posee ningún control estándar excepto los formularios. 5 - Pasos para realizar el ejemplo 1 - Abrí el Visual Basic y te aparecerá una ventana para que puedas elegir el tipo de Proyecto o programa que querés realizar. Como verás hay muchas opciones, nosotros elegiremos la opción Estándar EXE como muestra la imagen: 2 - Ya abierto el VB podés ver que tenés un formulario llamado Form1, este es agregado automáticamente cuando comenzás un nuevo programa o proyecto, y es el nombre por defecto que se le asigna, obviamente esto se puede cambiar utilizando la propiedad Name que poseen los controles. 3 - Como se dijo nuestro programa va a consistir en un formulario con un botón que al presionarlo muestre un texto diciendo "Mi Primer programa", entonces agregá un botón a nuestro formulario. Para agregarlo lo podés hacer desde la barra de controles, en la parte izquierda del IDE, y buscá entre todos ellos un control llamado Command Button (Botón de comando). Haciendo doble click sobre el control, o dibujándolo sobre el formulario. 3 4 - Como te darás cuenta, el texto que muestra el botón por defecto es "Command1". Nosotros lo vamos a cambiar por "Mostrar mensaje". Para ello tenemos que cambiarle la propiedad Caption del botón. Entonces seleccioná con un click el command1 (cerciorate que esté seleccionado, cuando alrededor del botón aparece unos puntos azules) y en la ventana de propiedades de los controles que está ubicada en la parte derecha del IDE, te mostrará las propiedades del control que está seleccionado actualmente. En este caso como está seleccionado el botón solo nos mostrará las propiedades del Command1. Ahora buscá en la lista de propiedades la propiedad Caption y verás que dice Command1, borrala y escribí: "Mostrar mensaje". Como podés ver el texto o leyenda del botón ha cambiado. NOTA: Nosotros todavía no hemos ejecutado nuestro programa porque obviamente lo estamos diseñando. A esto se lo denomina trabajar en "Tiempo de diseño". La otra forma de trabajo se denomina "Tiempo de ejecución", que es cuando nuestro programa está siendo ejecutado o cargado en memoria. Tendrías que tener algo por el estilo en tu formulario Form1 5 - Ahora vamos a agregar las instrucciones o líneas de código para que cuando pulses el botón se despliegue un mensaje. Hacé Doble click sobre el botón y podés ver que se abre una ventana donde escribir el código. Esta se llama precisamente ventana de Código. Al abrirse la ventana muestra una serie de instrucciones Private Sub Command1_Click() End Sub A esto se lo llama Subrutina o procedimiento de código, y estas subrutinas tienen un comienzo y un fin. Se explica más adelante que es eso de Private sub, End Sub, procedimientos, funciones...etc. Por ahora lo que te tiene que quedar claro es que nosotros vamos a ingresar el código necesario para mostrar, por medio de una ventana, el mensaje "mi primer programa". Entre la declaración Private sub Command1_click y End sub escribe lo siguiente Msgbox "Mi primer programa" El código tendría que quedarte de la siguiente manera Private Sub Command1_click() MsgBox "Mi primer programa" End Sub 6 - Acá lo que se hizo fue utilizar una función llamada MsgBox , que sirve para mostrar mensajes. Ya podemos ejecutar o probar el ejemplo, para ello hay varias opciones y formas: Desde la barra de herramientas y presionas la flecha azul Ir al menú Ejecutar > opción Iniciar La más sencilla de todas que es presionando la tecla F5. Cuando ejecutes el programa y presiones el Command1, se mostrará el mensaje. 4 En este momento nuestro programa está en ejecución, para volver a la pantalla de vista de diseño y detener el programa , tenemos que presionar el ícono con un cuadrado azul (stop) o ir al menú ejecutar y elegir la opción terminar. 6 - Sobre los proyectos en Visual Basic Por último para cerrar esta introducción muy básica una aclaración sobre los Proyectos. Cada vez que inicias un programa nuevo Estándar Exe Visual Basic Hace lo siguiente: Crea un formulario llamado "Form1" y también un proyecto de trabajo llamado por defecto "Proyecto1". Cuando lo guardás, desde el menú Archivo > Guardar proyecto, se creará un archivo llamado "proyecto1.vbp", otro archivo con los formularios que tengas en el proyecto, en nuestro caso "Form1.frm" y otro archivo en este caso "Proyecto1.vbw" que es un archivo de configuración. Este último archivo a nosotros no nos interesa, ya que lo usa Visual Basic para configurar el proyecto cada vez que lo abrimos. Para guardar proyectos, hay que ir al menú archivo y elegir guardar proyecto, también te pedirá que guardes el formulario form1.frm . En ambos casos podés asignarle el nombre que quieras. Capítulo 3 - Variables y Tipos de datos 1 - Introducción Todos los lenguajes utilizan este sistema o metodología para la programación de aplicaciones, pero varían la forma en que se utilizan, su sintaxis etc... Cuando uno recién empieza a programar, parece muy complicado entender estos temas, pero con la práctica todo se va aclarando. Lo bueno de comprender los fundamentos de la programación, es que nos permite luego poder programar en casi cualquier lenguaje, porque la forma de programar en general no varía demasiado, lo que cambia en cada uno de ellos es su sintaxis y funciones y cosas propias del lenguaje. Aunque tampoco es tan así, ya que esto no significa que por que uno sea experto por ejemplo programando en lenguaje C, lo sea en Visual Basic y Viceversa. 2 - Las Variables Las variables, como su nombre lo indica, se utilizan para almacenar valores que tienen la propiedad de variar el contenido. Cuando hablamos de contenido nos referimos a cualquier tipo de datos, por ejemplo un nombre, una fecha, un color, un número etc... . A las variables se les asigna un nombre para poder utilizarlas. Por ejemplo puedo crear una variable llamada fecha y esta almacenará una fecha. A los nombres de las variables se los denomina identificadores. Cuando creamos variables, tenemos que tratar de asignarles un nombre que se relacione con el tipo de dato que queremos almacenar. Por ejemplo no tendría mucho sentido crear una variable llamada m y allí guardar o almacenar un nombre o un apellido, por que cuando echemos vista al código resultaría más difícil deducir que tipo de dato estoy guardando. Por ejemplo en este último caso 5 sería mucho más lógico crear una variable llamada “nombres” y allí guardar "Luciano", "Pedro", "Natalia" etc.. En visual basic a las variables conviene declararlas, o sea, avisarle a vb que vamos a utilizar dichas variables. A estas se las declara en el comienzo del código y se les antepone la palabra reservada Dim, luego el nombre que nosotros queramos y seguido el tipo de dato que almacenará, por ejemplo si quiero almacenar en una variable llamada Numero Dim numero As Integer La palabra Integer le avisa a vsiaual basic que voy a guardar un número entero. Después de declararla le podemos asignar un valor con el operador "=", ejemplo: Dim numero As Integer numero = 1500 Pero hay que tener en cuenta que al declarar una variable, en este caso, de tipo integer, no podríamos almacenar en ella una cadena de caracteres como por ejemplo un nombre o cualquier otro tipo de datos que no sea un número entero. Si sucedería esto nuestro programa daría un error en tiempo de ejecución, mostrándonos un feo cartel diciéndoos que no coinciden los tipos de datos.. 3 - Tipos de datos: Los tipos de datos, indican el tipo de valor que puede almacenar una variable. Los principales tipos de datos: Números enteros: dentro de los números enteros tenemos varios tipos de datos dependiendo el rango que queramos utilizar: Byte: puede almacenar números enteros dentro del rango desde 0 a 255 Integer: puede almacenar números enteros dentro del rango -32.768 a 32.767 Long: puede almacenar números enteros dentro del rango -2.147.483.648 hasta 2.147.483.648 Números decimales: para almacenar números decimales contamos con los siguientes tipos de datos: Single: almacena números decimales en el rango +/- 1e-45 hasta 3e38 Double: desde +/- 5e-324 hasta 1.8e308 Cadenas de caracteres: las cadenas de caracteres se definen con la palabra String y tienen un rango de hasta 2 billones de caracteres. Tipos de valores lógicos: para almacenar tipos de valores lógicos como verdadero o falso, se utiliza la palabra Boolean y sus 2 posibles valores son True (verdadero) y False (falso). Fechas y horas: Para almacenar fechas y horas se utiliza la palabra Date Tipo variant : Las variables de este tipo pueden almacenar cualquier tipo de valor, pero ocupan más memoria. Nota: hay mas tipos de datos, incluso nosotros podemos crear los nuestros. 4 - Constantes: Las constantes, como las variables, se utilizan para guardar datos y valores para nuestro programa, 6 pero a diferencia de estas últimas (las variables), el contenido que almacenen no cambia, siempre es constante. A diferencia de las variables que se declaran con la palabra Dim, las Constantes se declaran con la palabra Const. Ejemplo: Const numero = 53 En la línea anterior he creado una constante, que la llamé numero y va a almacenar un número , y este valor, cuando se ejecute mi programa se mantendrá invariable. 5 - Estructuras de control: Las estructuras de control se utilizan para controlar el flujo del programa en una rutina o función. Mediante ellas podemos controlar, mediante una condición, que se ejecute una determinada línea o bloque de líneas de código .. o que no se ejecuten. Estructura If - Then - Else Esta estructura permite mediante una condición, que se ejecute o no se ejecute determinada tarea o línea de código. Por ejemplo supongamos que tenemos en un formulario un control Label con la propiedad Caption con el valor 50 If Label1.Caption = "50" Then msgbox "mi label tiene un valor de 50" else msgbox "mi label NO tiene un valor de 50" end if Esto traducido al español significaría lo siguiente: Si (If) la propiedad caption del label1 que tengo en el formulario es igual (=) a "50" entonces (Then) que muestre un determinado mensaje, si no (Else) que muestre el otro mensaje. En conclusión lo que hace esta estructura es evaluar una condición, si se cumple, que se ejecute determinada tarea. si no se cumple, se ejecutará las líneas de código que estén bajo la cláusula Else. Luego tenemos que cerrar la estructura con la palabra end if. Tenemos que aclarar que no es obligatorio usar If y else juntos en la misma cláusula. Por ejemplo podríamos utilizar solo una estructura If sin else. Por ejemplo: Private Sub Command1_Click() 'Si la propiedad caption del Label1 es "Hola" entonces se termina el programa If Label1.Caption = "Hola" Then End End If 'Si no, se prosigue con esta línea MsgBox "No se ejecutó el bloque If Anterior porque el Caption del control Label1 no era Hola" End Sub Coloca un Label1 y un Command1. En la propiedad caption del Label1 escribe "Hola". Al ejecutar el programa y presionar el Command1, se termina el programa con la sentencia End de Visual Basic (End sirve para finalizar completamente la ejecución de nuestro programa). En cambio si ahora le cambia el caption al Label1 y volvés a ejecutar el proyecto, podés ver que la instrucción End no se ejecuta, si no que la pasa por alto y sigue con las restantes líneas, en este caso ejecuta la función MsgBox con el mensaje. 7 Estructura While - Wend Esta estructura de control repetirá sin detenerse un determinado código mientras se cumpla una condición. Por ejemplo supongamos que tenemos una variable llamada x que tiene un valor de 100. while x = 100 ...se ejecutan todas las líneas de código que estén aquí wend Esto traducido al español significaría lo siguiente: Mientras (While) la variable x sea igual a 100, y no cambie su valor, se formará un bucle interminable, hasta que x cambie a cualquier otro valor disto de 100. Si x cambia el valor, por ejemplo a 234 saldría del bucle While - wend y seguiría ejecutando el resto del código, si es que hay mas código o instrucciones a ejecutar. Un ejemplo, agrega un Command1 al formulario y un control Text1. Cuando ejecutemos el ejemplo, se deberá escribir un número dentro del control textBox. Entonces se creará un bucle While, que mostrará en el Caption del formulario, es decir en la barra de título, el intervalo desde 0 hasta el número que hayamos ingresado en el Text1. Es decir si ingresamos el número 9000, en el caption del formulario se imprimirán los número desde 0 hasta 9000. Para hacer esto, dentro del bucle While pondremos una variable llamada Contador, que en cada pasada se incrementará en 1, pero cuando la variable Contador sea igual al número que haya en el Text1, se finalizará el bucle y se mostrará un mensaje que finalizó el mismo Private Sub Command1_Click() Dim contador As Integer 'Declaramos la variable While contador <> Text1 'Mostramos en el formulario el valor de la variable contador Me.Caption = contador 'Incrementamos la variable en 1 contador = contador + 1 Wend MsgBox "Terminó el bucle" End Sub Estructura For - next La estructura es utilizada para generar una repetición de instrucciones o bucle, pero no evalúa una condición como en el caso del bucle While, si no que lo hace entre un número inicial y un número final que le debemos indicar al mismo. Por ejemplo, tenemos un formulario con un Label1 y declaramos una variable de tipo integer llamada "contador" como en el caso anterior Private Sub Command1_Click() Dim contador As Integer For contador = 0 To 1000 Label1.Caption = contador Next contador End Sub Esto traducido significaría lo siguiente: Primero, tenemos una variable llamada "contador". Mediante el bucle For - next podemos controlar la cantidad de veces que queremos repetir un determinado proceso o instrucción. Esta posee un principio y un fin, en este caso el principio sería 0 y el fin 1000, de manera que la variable contador se incrementará en 1 hasta que llegue a 1000, y repetirá 1000 veces todas las instrucciones que estén 8 bajo la cláusula For-next. En este caso nuestro control Label1 mostraría el contenido de la variable contador. Para ver en forma detallada y paso a paso esto, pongamos un ejemplo que lo que hace es repetir 10 veces (desde el 1 hasta el 10 en el intervalo del bucle For) y mostrará un mensaje con el valor de la variable Contador. Una vez que llegue a 10, terminará. Colocá un Command1. Doble Click en el botón para escribir dentro del procedimiento que se ejecutará cuando lo presionemos. El código: Dim contador As Integer For contador = 1 To 10 MsgBox "La variable Contador vale: " & contador Next contador MsgBox "Fin del bucle For" Estructura Select case La estructura Select Case se suele utilizar para evitar el uso de muchas cláusulas If y de esta manera no tener que anidarlas. La clausula Select evalúa una condición y las cláusulas case contienen valores, si el valor que contiene la cláusula case es igual a la condición que se evaluó, ejecutará las instrucciones en dicha cláusula. Dim Nombre As String Nombre = Text1 Select Case Nombre Case "Jorge" MsgBox "Se ejecutó la cláusula case: " & Nombre Case "Pedro" MsgBox "Se ejecutó la cláusula case: " & Nombre Case "Carolina" MsgBox "Se ejecutó la cláusula case: " & Nombre End Select Esta estructura es muy práctica. En el ejemplo anterior, la cláusula Select case contiene como condición el valor de la variable llamada Nombre. Esa Variable toma el valor que tenga un control Text1, entonces buscará en todas las cláusulas case, y si encuentra una igual a la condición, ejecutará solo las instrucciones de la cláusula case que tenga el mismo valor, por ejemplo si ingresara el nombre "Martín" no se ejecutará ninguna cláusula Case. En cambio si ingreso "Jorge" se ejecutará solo las instrucciones que estén en la sección Case "Jorge" y asé... En el caso anterior solo hemos colocado un valor para cada Case. Si quisiéramos colocar mas valores podríamos hacerlo de esta forma: Private Sub Form_Load() Dim x As Integer x = 10 'Le ponemos un valor a x Select Case x Case 5, 10 MsgBox "Se ejecutó el case que tiene el 5 y el 10" 'Se ejecuta esta sección Case 15, 20 'Esto no se ejecuta Case 25, 30 'Esto tampoco End Select End Sub 9 es decir que podemos listar los valores en los Case separados por comas. En el caso anterior se ejecutará el case 5, 10 ya que la variable x vale 10 6 - Operadores de Visual basic Los operadores nos permiten operar, validar, comparar, asignar, distinguir, etc.., los datos e instrucciones de código de nuestros programas. A continuación los operadores más importantes. Operadores aritméticos Estos operadores nos permiten trabajar con cálculos matemáticos como la suma (+), resta (-), división (/) y multiplicación (*). Ejemplos: a=5 b = 15 c = a + b ' en este caso la variable c contendría el valor 20 ganancia = 500 perdida = 200 total = ganancia - perdida 'la variable total pasaría a valer 300 x = 100 y = 20 z = x / y ' La Variable z vale 5 x = 100 y = 20 z = x * y ' La Variable z vale 2000 Operadores lógicos Se utilizan en expresiones para devolver resultados del tipo True o False, es decir Verdadero o falso. Los más comunes son el operador And y el operador Or Ejemplos: If (x = 10) And (nombre = "maría") Then 'solo se ejecutará el código dentro de este bloque IF si la variable 'x vale 10 y la variable nombre es igual a maría End If If (m = 10) Or (nombre = "pedro") Then 'el código se ejecutará si por lo menos una variable es correcta 'es decir si por lo menos se cumple una condición End If Operadores de comparación Los operadores de comparación se utilizan para comparar expresiones de cualquier tipo. Los más importantes son: El operador de igualdad (=), menor que (<), mayor que (>), distinto a(<>) Ejemplos: If label1.Caption = "06/08/1978" Then 'si el control label1 en su caption contiene esa fecha 'se ejecutará el código que este aquí 10 End If if x > 6 then 'si la variable x es mayor que 6 se ejecutará el código que este aquí end if If país <> "Estados unidos" Then 'si la variable país es distinta a "Estados unidos" se ejecutará el código End If While c <= 87 'mientras la variable c sea menor o igual a 87 se ejecutará 'el bucle While Wend Por último quedaría por ver el operador de concatenación (&) que se utiliza para unir cadenas de caracteres. Por ejemplo: nombre = "Jose" apellido = "Peralta" nombrecompleto = nombre & apellido 'La variable nombrecompleto pasaría a contener la unión de las otras dos variables 'es decir Jose Peralta Nota: hay muchos más operadores en Visual Basic, estos son los básicos ----------------------------------------------------------------------------------------------------------------------------- --------------Formulario Ventana o cuadro de diálogo. Los formularios son contenedores para controles. Una formulario de interfaz de múltiples documentos (MDI) también puede actuar como un contenedor para formularios secundarios y algunos controles. Expresión Boolean Expresión cuyos valores son True o False Declaración Código no ejecutable que asigna nombre a una constante, variable o procedimiento y especifica sus características (como el tipo de datos). Para procedimientos DLL, las declaraciones especifican nombres, bibliotecas y argumentos. -------------------------------------------------------------------------------------------------------------------------------------------Formulario. Es el contenedor donde agregamos los controles, como los botones, cajas de texto, etiquetas, etc. Un programa puede tener uno o más formularios. La propiedad caption del formulario, nos permite cambiar lo que aparece en la barra de título del mismo. Labels Las etiquetas que se llaman label nos permiten colocar nombres y organizar las acciones de los proyectos. Picture Box Es un control de cuadro para cargar y mostrar una imagen, se puede utilizar para mostrar gráficos o para contenedor de otros controles. si se quiere utilizar la imagen en varios controles, este crea un control de la imagen para cada control. 11 Command Button Es una propiedad que nos permite crear un botón, con el cual se realizan las acciones del programa, ejemplo suma de dos textos, etc. Al momento de programar haciendo doble click sobre el mismo nos envía directamente al formulario de programación en donde escribimos el código. Este control, "Botón de comando", nos permite ejecutar alguna rutina, función o procedimiento, generalmente en el evento click del mismo, para realizar de esta manera alguna tarea dentro del programa. Como se mencionó, se utiliza en el evento Click para ejecutar alguna acción cuando se produce dicho evento, y es precisamente este suceso que por defecto añade Visual Basic al control. Frame También se le conoce con el nombre de panel. Su utilidad reside en el hecho de poder agrupar componentes bajo un mismo marco. Puede llevar un nombre descriptivo para el conjunto de componentes que agrupa (cambiando el nombre de la propiedad Caption), o bien se lo puede dejar en blanco. Gracias a esto, se puede dividir una sola ventana en varias partes, por ejemplo en un frame se ponen los componentes donde se capturan los datos de un problema y en otro la información de salida. Se debe recordar poner primero todos los frame en la form y encima de ellos los componentes que contendrán. Si los componentes ya habían sido insertados en la form y se quiere poner una frame para agruparlos, se deberán cortar los componentes y pegarlos sobre la frame. List Box Este es el nombre como se le reconocerá al objeto durante el programa, se acostumbra escribir "lst" antes del nombre para saber que es un Listbox (Ej.: lstlista) Su propiedad consiste en poder cargar las distintas listas en los comandos. Sus subcomandos son: List: aquí podemos ingresar los elementos nuevos al "listbox." Font: permite escoger o seleccionar el tipo, tamaño y estilo de letra. Sarted: para que el listado aparezca en orden alfabético. Heigth, Left, top, Width: se refieren al tamaño del espacio reservado para el mismo. 12