You are on page 1of 22

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLGICOS ESCUELA DE COMPUTACION

GUIA DE LABORATORIO #01 Nombre de la Practica: CICLO: 02/ 2013 Lugar de Ejecucin: Tiempo Estimado: MATERIA: INTRODUCCION A VISUAL BASIC .NET Centro de Computo 2 horas y 30 minutos Lenguajes de Programacin 1

I. OBJETIVOS Que el estudiante: Reconozca el entorno de herramientas y ventanas que forman al IDE de Visual Studio .Net Se familiarice con los tipos de proyectos de Visual Basic .NET Elabore programas respetando la sintaxis de VB.NET Aplique los pasos para la construccin de una aplicacin de tipo Windows Form. Diferencie uso de los Tipos de Datos y variables que existen en VB.NET Pueda declarar variables en diferentes mbitos/alcances

II. INTRODUCCION TEORICA

Qu es Visual Basic?
Visual Basic es un ambiente grfico de desarrollo de aplicaciones para el sistema operativo Microsoft Windows. Las aplicaciones creadas con Visual Basic estn basadas en objetos y son manejadas por eventos. Visual Basic se deriva del lenguaje Basic, el cual es un lenguaje de programacin estructurado. Sin embargo, Visual Basic emplea un modelo de programacin manejada por eventos.

Qu es Visual Basic .NET?


Es un lenguaje orientado a objetos y eventos que soporta encapsulacin, herencia y polimorfismo; comparte el entorno de desarrollo con Microsoft Visual C++ .NET, Microsoft Visual C# .NET, etc.

Entorno de Desarrollo
Visual Studio es un conjunto completo de herramientas de desarrollo para la generacin de aplicaciones Web ASP.NET, Servicios Web XML, aplicaciones de escritorio y aplicaciones mviles. Visual Basic, Visual C++, Visual C# y Visual J# utilizan el mismo entorno de desarrollo integrado (IDE), que les permite compartir herramientas y facilita la creacin de soluciones en varios lenguajes. Asimismo, dichos lenguajes aprovechan las funciones de

Gua # 01: INTRODUCCION A VISUAL BASIC .NET .NET Framework, que ofrece acceso a tecnologas clave para simplificar el desarrollo de aplicaciones Web ASP y Servicios Web XML.

Imagen 1.1: Vista inicial de un proyecto Windows Forms

Imagen 1.2: Vista de los controles mas comnmente utilizados en un formulario

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET

Visual Basic 2008 incluye entre muchas capacidades, la continuacin de bucles, la disposicin garantizada de recursos, las propiedades de acceso combinado, los tipos de datos sin signo y que aceptan valores NULL, la sobrecarga de operadores, los tipos parciales y genricos, los eventos personalizados y la comprobacin de la compatibilidad con Common Language Specification (CLS).

Ambiente de desarrollo para Aplicaciones Windows


En VB hay diversas de tipos de proyectos disponibles, de los cuales se trataran a los proyectos de tipo Windows. Estos proyectos presentan un formulario en blanco con las ventanas de apoyo mostradas en la imagen 1.1. Cuadro de Herramientas Dentro de un formulario, VB dispone al programador de una serie de controles, los cuales son las maneras de cmo la aplicacin puede interactuar con los usuarios a los cuales ira dirigida la aplicacin a construir. Con el .NET Framework 3.5 consta de una diversidad de controles y objetos para usar en las aplicaciones, clasificados en categoras. En la imagen 1.2 se muestran un listado de los controles ms comunes utilizados dentro de un form. Una descripcin bsica de algunos de estos se muestra en la Tabla 1. Observe que cada control tiene su icono, nombre, prefijo y su descripcin. Icono Controles comunes Button CheckBox ComboBox DateTimePicker Label ListBox MaskedTextBox PictureBox RadioButton TextBox Components ImageList Timer img tmr Es un contenedor de imgenes, para que despus se use con otros controles. Sirve para realizar un conteo de tiempo, en tiempo de ejecucin. btn chk cbo dtp lbl lst msk pic rdb txt Se utiliza para iniciar, detener o interrumpir un proceso Muestra una casilla de verificacin y una etiqueta para texto. Se utiliza en general para establecer opciones. Muestra una lista desplegable de elementos. Muestra un calendario grfico desplegable, que permite que los usuarios seleccionen una fecha o una hora. Muestra texto que los usuarios no pueden modificar directamente. Muestra una lista de textos, tambin llamados elementos. Captura texto escrito por el usuario, ya sea teniendo un formato de entrada. Muestra archivos de imgenes, tales como mapas de bits e iconos, gifs, etc. Muestra un botn que puede activarse o desactivarse. Muestra texto escrito en tiempo de diseo que puede ser editado por los usuarios en tiempo de ejecucin. Nombre Prefijo Descripcin

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Icono Containers FlowLayoutPanel GroupBox Panel flp gpb pnl Es un contenedor de controles que no permite la modificacin de la posicin del control. Agrupa un conjunto de controles (tales como botones de opcin) en un marco con etiqueta. Agrupa un conjunto de controles en un marco sin etiqueta que permite el desplazamiento. Nombre Prefijo Descripcin

Tabla 1: Descripcin de algunos controles ms utilizados de la barra de controles El prefijo es una combinacin de letras que se le sugiere al programador colocar al inicio del identificador (nombre) del control agregado, de acuerdo al tipo del mismo. Con este prefijo, se pretende que al momento de dar lectura a un cdigo con muchas referencias a objetos utilizados, sea ms fcil de entender y comprender.

Estructura de un programa en Visual Basic


El cdigo VB se agrupa en Mdulos/Procedimientos y en Clases que se almacenan en 1 o mas archivos. A su vez, estos archivos se agrupan en proyectos, que se compilan en aplicaciones. Los mdulos de clase se vern posteriormente en el curso.

Mdulos estndar
Un modulo agrupa cdigo fuente de una aplicacin y se almacena en una archivo .vb. Para definir un modulo se usa la sintaxis siguiente: [Public Friend] Module nombre_modulo [Sentencias] End Module

Procedimientos
Tal como recordara en cursos anteriores, un procedimiento es un conjunto de sentencias limitadas en un bloque bajo un nombre. En VB, el bloque de sentencias va limitado entre las declaraciones Sub y End Sub, o Function y End Function, los cuales se utilizan as: Procedimiento Sub: ejecutan acciones pero no devuelven un resultado al cdigo que lo invoco Procedimiento Function: ejecutan acciones y devuelven un resultado al cdigo que los invoco. Procedimientos conducidos por Eventos: son procedimientos que se ejecutan como respuesta a un suceso ocurrido en un programa. Procedimientos que definen propiedades: permiten devolver o asignar valores a propiedades definidas en un modulo, clase o estructura. Procedimientos que sobrecargan operadores. Definen la conducta de un operador estndar en un contexto diferente para el que esta definido. Procedimiento Main

Este procedimiento es el punto de entrada/inicio de la aplicacin, el 1er procedimiento al cual se obtiene acceso al ejecutar el cdigo.

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Un procedimiento ser invocado desde algn otro lugar en el cdigo, para ceder el control de ejecucin a este nuevo cdigo. Al finalizar el procedimiento, retorna el control de ejecucin al cdigo que lo mando a llamar. En esta introduccin nos centraremos en los procedimientos conducidos por eventos y adems a Main. El procedimiento Main es publico (public), no tiene argumentos/parmetros y no devuelve valor al finalizar Un procedimiento activado por evento se crea agregando al encabezado de un procedimiento la palabra Handles y luego la pareja (NomObjeto.NomEvento) al cual ser enlazado. Por ejemplo, el siguiente cdigo es un procedimiento que enlaza el evento Clic del control btnSaludo. El cdigo contenido en este procedimiento se activara cada vez que usuario de clic sobre dicho control. Private Sub btnSaludo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSaludo.Click MsgBox ("Hola a todos") End Sub

Manejo de Variables en VB.Net


Tipos de datos disponibles
En Visual Basic Net a toda variable que se use en un programa, se le debe asociar (generalmente al principio del programa) un tipo de dato especifico. Un tipo de dato define todo el posible rango de valores que una variable puede tomar al momento de ejecucin del programa y a lo largo de toda la vida til del propio programa. Varios de los tipos de datos ms comunes en Visual Basic Net se muestran en la Tabla 2

Declaracin de Variables
Para declarar una variable dentro de un procedimiento se realiza anteponiendo el Ambito (ver mas adelante) con la palabra reservada Dim al nombre de la variable, seguida de la palabra reservada As y el tipo de dato declarado. Un ejemplo sencillo sera: Dim strMiVar As String Observe varios ejemplos de declaracin de variables en la descripcin de los tipos de datos de la Tabla 2. Tipo de dato (Visual Basic) Boolean Byte Date Tipo en CLR (Framework) System.Boolean System.Byte System.DateTime

Rango valores disponibles True (verdadero), False (falso) Ejemplo: Dim Res As Boolean = True Valores positivos (entre 0 a 255). Ejemplo: Dim b as Byte = 129 Fechas, entre las 0:00:00 del 1 de Enero del 0001 hasta las 23:59:59 del 31 de Diciembre del 9999. Las fechas deben representarse entre almohadillas # y por lo habitual usando el formato norteamericano: #m-d-yyyy# Dim d As Date = #10-27-2001#

Integer

System.Int32

Un nmero entero (sin decimales). Valores: de -2,147,483,648 a 2,147,483,647. Se puede usar la letra I o el

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Tipo de dato (Visual Basic) Tipo en CLR (Framework) Rango valores disponibles signo % para indicar que es un nmero entero: Dim unEntero As Integer = 250009I Dim unEntero2 As Integer = 652000% Single System.Single Nmero de coma flotante de precisin simple. Valores: de -3.4028235E+38 a -1.401298E-45 para valores negativos; de 1.401298E-45 a 3.4028235E+38 para valores positivos. Se pueden usar la letra F y el smbolo ! para indicar que es un nmero Single: Dim unSingle As Single = 987.125F Dim unSingle2 As Single = 65478.6547! String (cadenas longitud variable) de System.String (clase) Depende de la plataforma. Una cadena de caracteres Unicode. Valores: De 0 a aproximadamente 2 billones (2^31) de caracteres Unicode. Se puede usar el smbolo $ para indicar que una variable es un String. Tabla 2: Algunos de los tipos de datos ms utilizados en VB.NET Si declaramos un conjunto de variables de un mismo tipo se declaran de la forma: Dim strMiVar1, strMiVar2, strMiVar3 As String En VB NET podemos declarar una variable y asignarla un valor inicial a la hora de declarar esta variable. El siguiente ejemplo, ayudar a comprender mejor esto: Dim strMiVar As String = "Ejemplo en Visual Basic 2005" Inclusive podemos declarar variables de forma anidada y asignarle valores directamente, como por ejemplo: Dim Val1 As Integer = 2, Val2 As Integer = 3, Val3 As Integer = Val1 + Val2 Otro aspecto destacable en la declaracin de variables en Visual Basic 2005, es el uso y gestin de variables de tipo String. Este tipo de variables se declaran como Nothing en su inicializacin. Es decir, una variable String que se declara por primera vez, no se inicializa a "" -cadena vaca- sino que se inicializa a un valor Nothing. Observe esta demostracin: Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load Dim strValor As String If strValor Is Nothing Then MessageBox.Show("guarda Nothing") Else MessageBox.Show("Tiene datos") End If End Sub Este ejemplo, mostrar en pantalla que el valor de la variable strValor es Nothing, y que por lo tanto, se trata de una variable no inicializada. Por ltimo, mencionar un aspecto destacable sobre el carcter " en las cadenas de texto. Una cadena de texto debe de ser introducida entre caracteres ". Sin embargo, podemos encontrarnos con la posibilidad de que queremos Lenguajes de Programacin 1 6

Gua # 01: INTRODUCCION A VISUAL BASIC .NET escribir este mismo carcter dentro de la cadena de texto. Esto se har duplicando siempre el carcter " que queremos escribir. Si por ejemplo queremos escribir la palabra Hola Mundo, declararemos nuestra variable como: txtVar = "Hola ""Mundo""

Ambito de las variables


El mbito indica en que lugar de la aplicacin podra y deber utilizar la variable. Puede ser una de las siguientes palabras claves. Dim, Static, Private o Public. Dim: Se puede utilizar a nivel de procedimiento y a nivel del formulario. Si se declara una variable a nivel de procedimiento con la palabra Dim, Visual Basic reinicializa (borra su contenido) la variable cada vez que ejecuta el procedimiento. Ejemplo: Dim a As Integer Static: Se utiliza solo a nivel del procedimiento. Cuando una variable se declara con la palabra Static, Visual Basic no reinicializa la variable cada vez que se ejecuta el procedimiento, solo lo hace la primera vez. Esto quiere decir que la variable conserva su valor entre una llamada al procedimiento y otra. Ejemplo: Static b As Double Private: Se utiliza solo a nivel del modulo e indica que la variable es privada; es decir, solo va a ser reconocida dentro del mdulo donde ha sido declarada, ejemplo: Private c as String Public: Se utiliza solo a nivel de mdulo e indica que la variable es pblica; es decir, va a ser reconocida en toda la aplicacin. Ejemplo Public d As Date

Declaracin de Constantes
Dentro de una aplicacin, puede ser adecuado e interesante la declaracin y uso de valores constantes cuyo valor asignado, no sea modificable a lo largo de la aplicacin y que se utilice para un caso o ejecucin determinada. El tpico valor constante de ejemplo en toda demostracin del uso y declaracin de variables constantes es el valor PI. Para declarar una variable de tipo constante, tendremos que declarar el tipo de variable con la palabra reservada Const delante de la variable. Observe el siguiente ejemplo: Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load Const PI As Double = 3.1416 Dim dValor As Decimal dValor = (2 * PI) ^ 2 MessageBox.Show(dValor) End Sub

Expresiones en VB: Prioridad en los Operadores


Los operadores mas utilizados en la redaccion de expresiones en VB.NET se muestran en la Tabla 3. Cuando se escriben aplicaciones es posible que tenga que utilizar varios operadores para evaluar una sola expresin conjunto de ellas. Dim dblRet As Double dblRet = 5 * 4 / 6 ^ 4 + 9 100 'devuelve -90.9845679012346 Console.WriteLine(dblRet) Console.ReadLine() En esta expresin, se utilizan cinco operadores para recuperar el valor de la variable dblRet. El orden de prioridad en el que se evalan los operadores afecta al resultado.

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Dim dblRet As Double dblRet = ((5 * 4) / 6) ^ 4 + 9 - 100 'devuelve 32.4567901234568 Console.WriteLine(dblRet) Console.ReadLine() En ambos ejemplos, se observa que aunque utilicen los mismos nmeros, los resultados son diferentes en funcin del uso de los parntesis. Por lo tanto hay que tener en cuenta dos elementos: 1. La ubicacin de los parntesis en la expresin 2. El orden de los operadores en la expresin # 1 2 3 4 5 6 7 8 9 Agrupacin () Exponenciacin (^) Negacin (-) Multiplicacin y divisin (*, /) Divisin de nmeros enteros (\) Mdulo aritmtico (Mod) Suma y resta (+, -) Operadores a bits Concatenacin de cadenas (&) Tabla 3: Jerarqua de algunos de los Operadores de VB.NET Cuando se utilizan parntesis en una expresin, son los primeros en calcularse, por lo tanto en los ejemplos anteriores, se dan dos resultados diferentes porque los parntesis anulan el orden de prioridad de los operadores, lo que ocasiona que una porcin varias de la expresin se evalen por otras. A continuacin se incluye un resumen de las reglas: La evaluacin de los operadores se efecta de izquierda a derecha. Los operadores aritmticos se evalan siempre en primer lugar, seguidos de los operadores comparativos y, por ltimo, los operadores lgicos. Los operadores comparativos tienen el mismo orden de preferencia. Las operaciones encerradas entre parntesis se evalan antes que las operaciones situadas afuera. El operador de concatenacin precede a todos los operadores comparativos y se sita detrs de los operadores aritmticos. Like, Is = <> < > <= >= Negacin (Not) Conjuncin (And, AndAlso) Disyuncin (Or, OrElse, Xor) ARITMTICOS COMPARATIVOS LGICOS

FUNCIONES DE CONVERSION DE TIPOS.


Son funciones del sistema que sirven para hacer conversiones de tipos de datos, pasar una variable de un tipo de dato a otro, siempre y cuando la variable que queremos convertir contenga un valor valido equivalente al tipo de dato que queremos convertir. Las funciones de conversiones () se deben utilizar cuando tenemos activo el Opcion Strict que obliga a utilizar los tipos de datos adecuados sino genera un error. Las funciones de conversin ms comunes son: Nombre de la funcin CBool(expresion) Tipo de dato que devuelve Boolean

Valores del argumento Cualquier valor de cadena o expresin numrica. 8

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Nombre de la funcin CByte(expresion) CChar(expresion) CDate(expresion) CDbl(expresion) CDec(expresion) CInt(expresion) CLng(expresion) CObj(expresion) CShort(expresion) CSng(expresion) CStr(expresion) Val(expresion) Fix(expresion) Int(expresion) Tipo de dato que devuelve Byte Char Date Double Decimal Integer Long Object Short Single String Double Depende del tipo de datos de la expresin Depende del tipo de datos de la expresin Valores del argumento De 0 a 255; las fracciones se redondean. Cualquier expresin de cadena; los valores deben ser de 0 a 65535. Cualquier representacin vlida de una fecha o una hora. Cualquier valor Double. Cualquier valor Decimal Cualquier valor Integer Cualquier valor Long. Cualquier expresin vlida. Cualquier valor Short. Cualquier valor Single. Depende del tipo de datos de la expresin. (Ver nota [A]) Una cadena de caracteres. Cualquier tipo de datos Cualquier tipo de datos

[A] Todos los objetos de vb.NET tienen unos mtodos para realizar conversiones a otros tipos, al menos de nmero a cadena, ya que tienen la propiedad .ToString que devuelve una representacin en formato cadena del nmero en cuestin (igual que CStr). Tabla 3: Lista de funciones intrnsecas ms comunes

Sentencias de Control Condicional


En VB se dispone de las siguientes estructuras de tomas de decisiones: If Then [ Else ] Select Case Ambas estructuras son equivalentes en su ejecucin a las estructuras if-else y switch de lenguaje C, respectivamente. Observe la sintaxis de uso en Tabla 4. Estructura If-Then-[Else] If [(] Condicin[)] Then Sentencias cuando se cumpla Condicin [Else Sentencias a ejecutar al no cumplir condicin ] End If Estructura Select Case Select [Case] [(]ExpresionaProbar[)] Case Expresion1 [sentencias 1] [Case Expresion2] [sentencias 2] [Case Else] [sentencias n] End Select

+ Nota: los elementos entre [ ] son opcionales Tabla 4: sintaxis generales de estructuras repetitivas de VB

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET

Con respecto a estructura Select Case


La variable ExpresionaProbar puede ser una expresin numrica o alfanumrica, y Expresion1, Expresion2 representan una lista de expresiones que pueden tomar estas formas: En todas estas formas, Expresion debe ser del mismo tipo que la ExpresionaProbar. Observe algunos ejemplos a continuacin Ejemplos de Expresiones En sentencia Case Case Is < 4 Case Is >= Q Case 3 Case W To 52 Case 7, A Case si,SI Case 6, -12 To 4 Significado la ExpresionaProbar sea menor que 4 ExpresionaProbar sea mayor o igual que valor Q El valor de ExpresionaProbar sea igual a 3 ExpresionaProbar est ubicado en el rango: valor de W hasta 52 mximo ExpresionaProbar sea igual a 7 o igual al valor de A ExpresionaProbar sea si o sino SI ExpresionaProbar sea igual a 6, o que se ubique en rango -12 a 4 Expresion[, Expresion] Expresion To Expresion Is Operador-de-relacion Expresion Combinacin de las anteriores

Si estructura Select no encuentra coincidencia con ninguna de las expresiones de pruebas Case, buscara ejecutar bloque Case Else.

Comentarios (ayuda para ti programador!!)


Cuando una lnea de un programa, o parte de ella, va precedida de una comilla simple ( ), VB ignorara esta lnea como un comentario, iniciando del carcter siguiente hasta el final de esa lnea.

III. MATERIALES Y EQUIPO Para la realizacin de la gua de prctica se requerir lo siguiente: No. 1 2 3 Requerimiento Gua de Laboratorio #01 de LP1 PC con Microsoft Visual Studio 2010 .NET instalado Memoria USB Computadora con acceso a Internet Cantidad 1 1 1 1

IV. PROCEDIMIENTO Para esta prctica deber crear una carpeta con el nombre de Prctica1LP1_CARNET, en la cual va a guardar todos los archivos de esta prctica y de anlisis de resultados. Lenguajes de Programacin 1 10

Gua # 01: INTRODUCCION A VISUAL BASIC .NET

PARTE 1: Creando una Aplicacin Windows


Pasos para la creacin de aplicaciones en Visual Basic 1. 2. 3. 4. 5. En el men Inicio de Windows, localice a Microsoft Visual Basic 2010 dentro del listado de accesos de programas instalados Aparecer la pantalla de bienvenida que es la interfaz para Visual Studio, tambin conocida como Entorno de Desarrollo Integrado o IDE. Haga clic en el men Archivo y luego sobre opcin Nuevo Proyecto Aparece el cuadro de dilogo Nuevo proyecto (Ver Figura 1.1). De las plantillas recientes (ver columna a la izquierda), seleccione Visual Basic y luego su plantilla Windows. En la parte central, de clic sobre opcin Aplicacin de Windows Forms

Figura 1.1: Seleccin de tipos de Proyectos en Visual Studio .NET 6. 7. En la parte inferior, en la opcin Nombre, modifquelo con el nombre Ejemplo1, el cual ser el nombre de nuestro proyecto. Haga clic en Aceptar. Ahora proceda a incluir en el area de Diseo del Form, a c/u de los controles mostrados en la Figura 1.2 Apyese en la imagen 1.1 (de la introduccin terica), localice el panel Cuadro de herramientas y determine el tipo control a utilizar. 8. Hay 2 maneras de agregar los controles deseados al formulario:

a) Dar clic sobre el control requerido de la barra herramientas y luego dar un clic en el area del form que usara ese control. b) Dar clic sobre el control en barra herramientas y luego, colocar cursor del ratn sobre area del form, manteniendo presionado botn principal .

Lenguajes de Programacin 1

11

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Establecer las propiedades de los Controles 9. Las propiedades de un Control, cambian la apariencia y/o el funcionamiento del mismo ante el usuario que usa el form. Una propiedad en Visual Basic representa un atributo de un objeto, en este caso, un Control. Por ejemplo: Uno de los atributos de un control Button es el texto que este muestra. En este caso, se puede modificar al asignar la propiedad Text. La mayora de stas modificaciones tambin se pueden establecer o ejecutar dentro del cdigo del programa Las propiedades pueden tomar muchos tipos diferentes de valores adems del texto. Si se cambia el tamao de un control o se reubica, tambin se actualizan las propiedades Size y Location que determinan el tamao y la ubicacin de un control en el formulario.

CONTROL Form1

PROPIEDAD Text BackColor

Nuevo VALOR Pruebas variables de mbito de

Un color Personalizado a su gusto btnContar Contar btnReinicio Reiniciar conteo btnFin Salir programa

Button1 Button2 Button3

Name Text Name Text Name Text

Figura 1.2: Vista Formulario del Ejemplo 1 y los controles requeridos. 10. En la tabla de la Figura 1.2 se detalla a los diferentes controles colocados en el Form1 y las propiedades (y su nuevo valor) que deber modificar antes de continuar. Observe uso de prefijos en el identificador de c/control (que es definido en propiedad Name de c/control).

Agregar el cdigo y la funcionalidad al Programa 11. Para agregar cdigo a un determinado control se debe de hacer doble clic sobre el. De doble clic sobre un area del control Form1. Se abrir una nueva ventana denominada Editor de cdigo, como se muestra en la Figura 1.3.

Figura 1.3: Editor de cdigo de Visual Studio .NET Lenguajes de Programacin 1 12

Gua # 01: INTRODUCCION A VISUAL BASIC .NET En la parte superior se muestran los contenidos de los archivos de cdigo y diseo de los objetos Form y modulo. Luego hay 2 listados de seleccin en la parte superior, el de la izquierda muestra los Nombres de Objetos disponibles y a la derecha los Nombres de los Procedimientos de Eventos en los cuales se agregaran los cdigos a programar. Estos permiten ubicar al cursor de escritura en el modulo y procedimientos correctos a programar. 12. En la Figura 1.3, el Editor de cdigo muestra primero el encabezado-final del modulo de clase Form1, el cual contendr a su vez todo el cdigo utilizado para programar a los objetos insertados en el mismo. Luego se muestra el encabezado-final del procedimiento de evento Load del objeto formulario Form1, as:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub

13. Este cdigo es un Controlador de evento, tambin denominado procedimiento Sub manejado por evento. Cualquier cdigo dentro de este procedimiento (entre Sub y End Sub) se ejecuta cada vez que suceda el evento programado para ese control. 14. Ejecute el programa creado hasta aqu. Lo puede hacer de tres formas diferentes: Presionando la tecla F5 Eligiendo en el men Depurar -> Iniciar Depuracin Haciendo clic en la Barra Estndar en el 1er icono del siguiente trio de la barra de botones Estndar.

15. Finalice la ejecucin del programa en diseo, seleccionando el 3er botn del trio mencionado en paso anterior.

PARTE 2: Declaracin de variables y mbito/Alcances de las mismas


16. Retorne a la ventana de cdigo del form1. Desplace el cursor en cada lnea de cdigo y observe que los listados superiores de ubicacin de cdigo cambian de acuerdo a donde se localice el cursor. 17. Ahora redacte cada bloque de cdigo a continuacin. Para ello, seleccione c/objeto y el Evento/Nivel a programar (de los cuadros de seleccin objeto-eventos superiores) indicados. (*) Por cada seleccin cuide la ubicacin del cursor, porque VB le ayuda a colocarlo al inicio del bloque donde usted ha ubicado a las opciones de objetos y eventos para programar!! Objeto cdigo a incluir Form1 (Declaraciones) 'Private conta As Integer 'variable entera de alcance privado Private mensa As String (Form1 eventos) Load 'Evento se ejecuta al iniciar ejecucion de Form1 mensa = "Aun no ha presionado boton Contar" Label1.Text = mensa y Evento/Nivel

Lenguajes de Programacin 1

13

Gua # 01: INTRODUCCION A VISUAL BASIC .NET btnContar Click 'Acumulador, total veces que presiona boton Dim conta As Integer conta = conta + 1 'conta += 1 En forma de Operador Abreviado mensa = "Presiono boton Contar, un total de " & CStr(conta) & " veces" Label1.Text = mensa btnReinicio Click 'Restaura conteo clic realizados a button1 'conta = 0 'mensa = "Presiono boton Contar, un total de " & CStr(conta) & " veces" Label1.Text = mensa BtnFin End 'Finaliza aplicacin 18. Ejecute nuevamente la aplicacin, observe el mensaje en la Label1. De clic sobre el botn Contar. Observe que variable conta cuenta el total de clic hechos al control por usuario. 19. De clic varias veces en botn Contar. Vera que no funciona el conteo hecho por la variable conta, siempre muestra 1 vez ha hecho clic. 20. De clic en botn Salir programa. El programa finaliza su ejecucin y retorna a la etapa de diseo. 21. Localice el cdigo del evento Clic del control btnContar y reemplace la palabra reservada Dim de la declaracin de variable conta, por la palabra Static. 22. Ejecute nuevamente el programa y de clic varias veces en el botn Contar. Responda Ahora funciona el conteo?, Por que?, Explique!! 23. Finalice ejecucin y regrese a la ventana de Diseo del Form1. Ubique el cursor en el cdigo del evento Click del botn btnReinicio y reactive (quitando comilla simple de comentario) a las asignaciones a las variables conta y mensa ejecutadas ah. 24. Vera que se marca error al indicar que variable conta no esta creada en el procedimiento Button2_Click 25. Para corregirlo, comente la lnea de declaracin de variable conta, ubicada en evento click del btnContar 26. Seleccione Objeto Form1 y Nivel de (Declaraciones) de los cuadros de listas de ubicacin del Cursor, para luego agregar ah una nueva declaracin: Dim conta As Integer 27. Vuelva a ejecutar el programa y en algn momento presione botn btnReinicio. El valor de variable conta ser asignado a cero 28. Guarde su proyecto, presionando opcin Archivo/Guardar Todo.... Observe la ubicacin (carpeta de proyectos de Visual Studio) predetermina que ofrece Framework. Guarde su proyecto en carpeta mis documentos del usuario con el cual ha iniciado sesin en su PC. 29. Finalmente localice y presione opcin Archivo/Cerrar Proyecto Click

Lenguajes de Programacin 1

14

Gua # 01: INTRODUCCION A VISUAL BASIC .NET

PARTE 3: Tomas de decisiones (If Then Else)


Ahora proceder a solucionar este problema:

Una administradora de prestamos requiere ingresar los datos de un prstamo (Monto a prestar, Tasa inters mensual y total de aos (a 2 aos inicialmente)) que se entregara a una Empresa ingresada. Determine el monto final que se pagara.
1. 2. 3. 4. De clic en la opcin Archivo/Proyectos y soluciones recientes. En esta lista de proyectos recientes, localice el nombre del proyecto (archivo Ejemplo1.vbproj) utilizado hasta ahora. En la ventana Explorador de Solucin, ubique el nombre del proyecto actual y de clic secundario sobre el mismo. Del men emergente seleccione opcin Agregar, luego Windows Forms En la ventana Agregar nuevo elemento- Ejemplo1, observe que en la parte central ya esta seleccionado Windows Forms. Confirme en ltima opcin (Nombre: ) que el nombre del archivo sea (Form2.vb) y presione Agregar. Observe que se muestra un nuevo form vacio y tambin, desde el explorador de solucin, se agrega un elemento mas (Form2.vb) al proyecto actual. Luego, desde el explorador de soluciones de clic derecho sobre el proyecto (Ejemplo1), para seleccionar opcin Propiedades. En esta ventana, ubique opcin Formulario de inicio y modifique valor a Form2. Guarde los cambios del proyecto actual. Luego aplique al Form2 el diseo definido en Figura 1.4.

5. 6. 7.

Figura 1.4: Diseo de controles del Form2 8. Con mucho cuidado, seleccione a cada control mostrado en la tabla a continuacin, para luego modificar a c/propiedad solicitada ah con el valor indicado. (propiedades) (controles) Form2 Label1 lblEmpresa Name Text Calculo del Monto a Prstamo Nombre de Empresa: pagar por un Enabled Checked

Lenguajes de Programacin 1

15

Gua # 01: INTRODUCCION A VISUAL BASIC .NET (propiedades) (controles) Label2 Label3 Label4 RadioButton1 RadioButton2 RadioButton3 TextBox1 TextBox2 TextBox3 TextBox4 Button1 Button2 ListBox1 Name lblMonto lblTiempo lblTasaInter rdbInteres1 rdbInteres2 rdbInteres3 txtEmpresa txtMonto txtTiempo txtTasaInterEX btnAnalisis btnFin lstResul Tiempo (aos) Tasa Interes: 12 % 23.5 % Otro, indique: (vacio) (vacio) 2 0 Analisis Financiero Salir del programa False False True Text Monto prstamo ($) Enabled Checked

* Extra: Para el cuadro lstResul, seleccione adems la propiedad Items, y presione en Colecciones.. que se indica ah, para luego agregar valor: (Resultados). Esto agregara este texto como 1er elemento del control lstResul 9. Realice la siguiente asignacin de cdigo, de acuerdo al objeto y evento indicados a continuacin. Objeto y Evento/Nivel cdigo a incluir Form2 Private TasaI As Decimal rdbInteres3 If rdbInteres3.Checked = True Then txtTasaInterEX.Enabled = True txtTasaInterEX.Focus() Else txtTasaInterEX.Text = "0" txtTasaInterEX.Enabled = False End If rdbInteres1 TasaI = 0.12 rdbInteres2 TasaI = 0.235 btnFin End 'Fin de aplicacin Click Click CheckedChanged (Declaraciones)

Click

Lenguajes de Programacin 1

16

Gua # 01: INTRODUCCION A VISUAL BASIC .NET btnAnalisis 'Valida que los datos ingresados sean correctos Dim NomEmpre As String Dim MontoInic, MontoFin As Decimal Dim Tiempo As Integer Click

NomEmpre = txtEmpresa.Text NomEmpre = NomEmpre.Trim() 'Quita espacios-blanco al inicio-final If NomEmpre.Length = 0 Then 'Si no hay caracteres en nombre empresa MsgBox("Debe indicar Nombre de la empresa", MsgBoxStyle.Information) txtEmpresa.Focus()'metodo que indica que control txtEmpresa recibira Cursor Exit Sub End If If IsNumeric(txtMonto.Text) = False Then 'Si ha escrito cantidad numerica incorrectamente MsgBox("Valor Monto incorrecto", MsgBoxStyle.Information) txtMonto.Focus() Exit Sub Else 'Prueba que cantidad sea negativa MontoInic = CDec(txtMonto.Text) 'Invoca funcion de conversion CDec If Not (MontoInic > 0) Then MsgBox("Valor Monto no puede ser negativo", MsgBoxStyle.Critical) txtMonto.Focus() Exit Sub End If End If Tiempo = CInt(txtTiempo.Text) 'toma tiempo ingresado 'Si selecciono Tasa interes3, valida que sea correcta txtTasaInterEX.Text=txtTasaInterEX.Text.Trim() If rdbInteres3.Checked = True Then If txtTasaInterEX.Text.Length > 0 Then If Not IsNumeric(txtTasaInterEX.Text) = True Then MsgBox("Tasa interes incorrecta", MsgBoxStyle.Critical) txtTasaInterEX.Text = "0" txtTasaInterEX.Focus() Exit Sub Else TasaI = CDec(txtTasaInterEX.Text) / 100 End If Else MsgBox("Aun no ha indicado una Tasa interes", MsgBoxStyle.Information) txtTasaInterEX.Focus() Exit Sub End If End If 'Hace el calculo esperado MontoFin = MontoInic * (1 + TasaI) ^ Tiempo 'Muestra la respuesta (Monto a pagar) TasaI *= 100 With lstResul.Items Lenguajes de Programacin 1 17

Gua # 01: INTRODUCCION A VISUAL BASIC .NET .Clear() .Add("EMPRESA: " + txtEmpresa.Text) .Add("Monto: $" & CStr(MontoInic) & ", Tasa anual: " & CStr(TasaI)) .Add("Monto a pagar: $" & CStr(MontoFin)) End With 10. Guarde los cambios del proyecto actual y ejecute la aplicacin. Para ver las validaciones de entradas programadas, equivquese a propsito en varios de los datos ingresados y presione botn btnAnalisis

PARTE 4: Tomas de decisiones (Select Case)


Problema a solucionar: Solicite cada apellido y los nombres de un estudiante, as como el valor del CUM obtenido de su ultimo ciclo de estudios. Determine el total de unidades valorativas que un estudiante puede llevar en el prximo ciclo de estudios segn el valor del CUM ingresado. Cuando el CUM es mayor a 7.5, puede llevar 32 UV mximo, si tiene entre 7 hasta 7.5, llevara 24 UV mx., si tiene CUM entre 6 a 6.9, cursara 20 UV. Y finalmente de 1 a 5.9, sern 16 unidades valorativas. En cualquier otro caso cursara 0 UV 1. 2. Abra nuevamente el proyecto creado en la parte 1, y agregue un nuevo formulario. Luego disee el siguiente esquema de objetos (mostrado en Figura 1.5) en este nuevo form (Form3)

(Propiedad) (controles) Form3 Label1 Label2 Label3 Label4 TextBox1 TextBox2 TextBox3 TextBox4 TextBox5 Figura 1.5: Diseo de controles del Form3 Button1 Button2 lblApe1 lblApe2 lblNom lblCUM txtApe1 txtApe2 txtNom txtCUM txtResul btnAnalisis btnFin Name Text Calculo de UV a cursar 1er Apellido: 2do Apellido: Nombres Valor CUM (vacio) (vacio) (vacio) 0.0 Resultado de evaluacion Calcular UV Salir del programa False de Enabled

3.

Proceda a digitar el cdigo detallado a continuacin, en cada evento y objeto especificado.

Lenguajes de Programacin 1

18

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Objeto y Evento/Nivel cdigo a incluir Form3 (Declaraciones) Dim noms, ape1, ape2 As String Dim CUM As Decimal Dim UV As Integer Private Sub EvaluarCUM() 'Una vez recibidos nombres del estudiante, asi como su CUM. 'se determinan las UV's solicitadas Dim nomcompleto As String 'Forma el nombre completo (en mayuscula) nomcompleto = noms & " " & ape1 & " " & ape2 nomcompleto = UCase(nomcompleto) If CUM < 0 Or CUM > 10 Then MsgBox("Valor de CUM fuera rango (0.0-10.0)", MsgBoxStyle.Critical) txtCUM.Focus() Else 'Usa estructura Select Case Select Case CUM Case 7.5 To 10 UV = 32 Case Is >= 7 UV = 24 Case Is >= 6 UV = 20 Case 1 To 5.99 UV = 16 Case Else UV = 0 End Select txtResul.Text = nomcompleto & " puede cursar " & CStr(UV) & " UV" End If End Sub ' 'Quita noms = ape1 = ape2 = btnAnalisis Click Valida datos antes de aplicar calculos de las UVs espacios en blanco a c/texto del nombre escrito txtNom.Text.Trim() txtApe1.Text.Trim() txtApe2.Text.Trim()

'Confirma que tenga nombres asignados y por lo menos un apellido If (noms.Length > 0) And (ape1.Length > 0 Or ape2.Length > 0) Then 'Evalua si hay algun error en el valor del CUM ingresado If Not IsNumeric(txtCUM.Text) = True Then MsgBox("Valor del CUM incorrecto, debe ingresar 0.0-10.0", MsgBoxStyle.Exclamation) txtCUM.Focus() Exit Sub Else CUM = CDec(txtCUM.Text) Call EvaluarCUM()'Llama a la subrutina EvaluarCUM End If Else 'Indica el error a usuario

Lenguajes de Programacin 1

19

Gua # 01: INTRODUCCION A VISUAL BASIC .NET If noms.Length = 0 Then MsgBox("Aun faltan nombres de estudiante", MsgBoxStyle.Exclamation) txtNom.Focus() Else MsgBox("Debe escribir al menos un Apellido al Estudiante", MsgBoxStyle.Exclamation) txtApe1.Focus() End If Exit Sub End If 4. 5. Guarde los cambios del proyecto actual y ejecute la aplicacin. Para ver las validaciones de entradas programadas, equivquese a propsito, ingrese el CUM, pero olvdese de los nombres, y otros casos. En evento Click del botn btnFin redacte un mensaje de despedida y realice el final de ejecucin

EJERCICIOS A REALIZAR AL FINALIZAR PROCEDIMIENTO: A. Abra nuevamente el proyecto utilizado en la PARTE 3 del procedimiento de esta Prctica y proceda a realizar los cambios necesarios para validar a los parmetros faltantes del prstamo que aun no se han programado. Adems, incluya otro botn (cuyo texto diga REINICIAR), el cual permitir deje en blanco a todos los textboxs y cuadro de lista y el foco de seleccin sobre en el 1er textbox. Desarrolle un nuevo proyecto denominado proyNUMEROS que resuelva las tareas siguientes

B.

+ Permita el ingreso de 10 nmeros decimales cuales quiera. Cada nuevo numero ingresado se mostrara en una de 2 listas diferentes (una para valores positivos y en la segunda, los valores negativos). + Una vez finalice el ingreso, se mostrara en otro cuadro de lista la solucin a estas incgnitas del listado de valores ingresados: A. Cul fue el menor de los nmeros positivos ingresados? B. Promedio de los nmeros positivos? C. Cul fue el mayor de los nmeros negativos ingresados? Cuando usuario no haya ingresado ningn listado de valores (sean tipo positivos o de negativos), muestre el aviso apropiado en cuadro de lista de los resultados.

V. DISCUSION DE RESULTADOS Elabore un proyecto de tipo Windows Forms denominado vbGUIA01lab, en el cual se solucionara cada uno de los siguientes problemas (Elaborar cada solucin en un formulario diferente dentro del mismo proyecto). PROBLEMA 1 Crear una aplicacin que permita a un estudiante de Ingeniera de la Universidad UDB ingresar sus 6 notas de periodos (3 de teo y 3 de lab) de la materia Sistemas Digitales. Una nota valida en la Universidad es correcta solamente en el rango de 0.00 (min) hasta 10.00 (mx.). Adems, los porcentajes a tomar en cuenta son: + Teora (60%): 20% por c/periodo + Practica (40%): 10% periodo 1 y 15% para periodos 2 y 3.

Lenguajes de Programacin 1

20

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Si el ingreso de todas las notas es correcto, debe mostrarle su nota promedio final, as como indicarle si aprob (con una nota de 6.00 o ms) o reprob la materia. Adems, de acuerdo al rango de notas donde se ubique el promedio final del estudiante, debe mostrarle un consejo acadmico (ver tabla a continuacion) y de forma grafica a una carita representativa del consejo seleccionado. Los rangos de notas y los mensajes, junto a una carita (de ejemplo, usted puede cambiarlas) a mostrar sern: Rango nota final Texto del consejo acadmico Carita de ejemplo

7.0 a 10.00

Grandioso, Excelente contina asi...

6.0 a 6.99

Muy bien pero trata de mejorar tu promedio en las siguientes materias, recuerda tu CUM Ms dedicacin estudiante, debe mejorar sus notas en esta materia y las del resto del Pensum Pongase las pilas mi hijito, ya no est en el Kinder No se convierta en un veterano de la U

3.0 a 5.99

0.00 a 2.99

PROBLEMA 2 Solicite al usuario una fecha separada en sus partes que la componen (Da, Mes y Ao), para luego mostrar un calendario en pantalla, resaltando la fecha ingresada. El problema es que el usuario puede ingresar combinaciones de da-mes-ao incorrectas, por ej.: 31/4/1934, 29/2/2006, 456/11/2009, etc. Por lo tanto, la solucin a implementar debe cumplir los siguientes aspectos: + Debe utilizar controles NumericUpDown para que usuario ingrese cada parte de la fecha. Tomar en cuenta que el ao valido estar ubicado exclusivamente entre 1850 al 2026, ambos aos inclusive. + Luego, para validar las partes de la fecha recibida, debe utilizar exclusivamente estructuras de control Select Case , es decir que no debe usarse ninguna estructura de control If-Else + Si la fecha recibida del usuario presenta algn problema, debe indicrsele al usuario un mensaje apropiado y exacto sobre Por qu su fecha ingresada presenta errores? y regresar el foco hacia el 1er control NumericUpDown. + Si la fecha ingresada es correcta, debe usar un Control denominado MonthCalendar para mostrar la fecha ingresada ubicada en el calendario del mes y ao especificado. Por ejemplo, si usuario ingresa la fecha valida 29/2/1992, el control de calendario se mostrara EXACTAMENTE as: Se le sugiere investigar acerca de los Controles de formulario solicitados en la descripcin de este problema, para facilitarse el diseo de su respectiva solucin.

Lenguajes de Programacin 1

21

Gua # 01: INTRODUCCION A VISUAL BASIC .NET Importante: + Documente los bloques y lneas de cdigo de acuerdo a lo crea conveniente, para que su instructor comprenda mejor su solucin!! + Enve la carpeta del proyecto resultante, de manera comprimida al email de su instructor(a) en la fecha que se lo indique!!

VII. BIBLIOGRAFA Bill Evjen, Jason Beres y otros (2002), El libro de Visual Basic.NET (1era Ed), Espaa. Editorial Anaya Ceballos, Francisco Javier (2006), ENCICLOPEDIA DE MICROSOFT VISUAL BASIC (1er Ed), Mxico, Editorial ALFAOMEGA, ISBN: 9701512189

Lenguajes de Programacin 1

22

You might also like