Está en la página 1de 22

UNIVERSIDAD DON BOSCO

FACULTAD DE ESTUDIOS TECNOLGICOS


ESCUELA DE COMPUTACION
GUIA DE LABORATORIO #01

CICLO: 02/ 2013

Nombre de la Practica:

INTRODUCCION A VISUAL BASIC .NET

Lugar de Ejecucin:

Centro de Computo

Tiempo Estimado:

2 horas y 30 minutos

MATERIA:

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

Nombre

Prefijo

Descripcin

Controles
comunes
Button

btn

Se utiliza para iniciar, detener o interrumpir un proceso

CheckBox

chk

Muestra una casilla de verificacin y una etiqueta para


texto. Se utiliza en general para establecer opciones.

ComboBox

cbo

Muestra una lista desplegable de elementos.

DateTimePicker

dtp

Muestra un calendario grfico desplegable, que permite


que los usuarios seleccionen una fecha o una hora.

Label

lbl

Muestra texto que los usuarios no pueden modificar


directamente.

ListBox

lst

Muestra una lista de textos, tambin llamados elementos.

MaskedTextBox

msk

Captura texto escrito por el usuario, ya sea teniendo un


formato de entrada.

PictureBox

pic

Muestra archivos de imgenes, tales como mapas de bits e


iconos, gifs, etc.

RadioButton

rdb

Muestra un botn que puede activarse o desactivarse.

TextBox

txt

Muestra texto escrito en tiempo de diseo que puede ser


editado por los usuarios en tiempo de ejecucin.

ImageList

img

Es un contenedor de imgenes, para que despus se use


con otros controles.

Timer

tmr

Sirve para realizar un conteo de tiempo, en tiempo de


ejecucin.

Components

Lenguajes de Programacin 1

Gua # 01: INTRODUCCION A VISUAL BASIC .NET


Icono

Nombre

Prefijo

Descripcin

Containers
FlowLayoutPanel

flp

Es un contenedor de controles que no permite la


modificacin de la posicin del control.

GroupBox

gpb

Agrupa un conjunto de controles (tales como botones de


opcin) en un marco con etiqueta.

Panel

pnl

Agrupa un conjunto de controles en un marco sin etiqueta


que permite el desplazamiento.

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

Tipo en CLR

(Visual Basic)

(Framework)

Boolean

System.Boolean

Rango valores disponibles


True (verdadero), False (falso)
Ejemplo: Dim Res As Boolean = True

Byte

System.Byte

Valores positivos (entre 0 a 255).


Ejemplo: Dim b as Byte = 129

Date

System.DateTime

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

Tipo en CLR

(Visual Basic)

(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

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
#

Agrupacin

()

ARITMTICOS

COMPARATIVOS

LGICOS

Exponenciacin (^)

Negacin (Not)

Negacin (-)

<>

Conjuncin (And, AndAlso)

Multiplicacin y divisin (*, /)

<

Divisin de nmeros enteros (\)

Mdulo aritmtico (Mod)

Suma y resta (+, -)

Operadores a bits

Concatenacin de cadenas (&)

>

<=

>=

Disyuncin (Or, OrElse, Xor)

Like, Is

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.

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

Lenguajes de Programacin 1

Valores del argumento


Cualquier valor de cadena o expresin numrica.
8

Gua # 01: INTRODUCCION A VISUAL BASIC .NET


Nombre de la
funcin

Tipo de dato que


devuelve

Valores del argumento

CByte(expresion)

Byte

De 0 a 255; las fracciones se redondean.

CChar(expresion)

Char

Cualquier expresin de cadena; los valores deben ser de 0 a


65535.

CDate(expresion)

Date

Cualquier representacin vlida de una fecha o una hora.

CDbl(expresion)

Double

Cualquier valor Double.

CDec(expresion)

Decimal

Cualquier valor Decimal

CInt(expresion)

Integer

Cualquier valor Integer

CLng(expresion)

Long

Cualquier valor Long.

CObj(expresion)

Object

Cualquier expresin vlida.

CShort(expresion)

Short

Cualquier valor Short.

CSng(expresion)

Single

Cualquier valor Single.

CStr(expresion)

String

Depende del tipo de datos de la expresin. (Ver nota [A])

Val(expresion)

Double

Una cadena de caracteres.

Fix(expresion)

Depende del tipo de


datos de la expresin

Cualquier tipo de datos

Int(expresion)

Depende del tipo de


datos de la expresin

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]

Estructura Select Case


Select [Case] [(]ExpresionaProbar[)]
Case Expresion1
[sentencias 1]
[Case Expresion2]
[sentencias 2]

If [(] Condicin[)] Then


Sentencias cuando se cumpla Condicin
[Else
Sentencias a ejecutar al no cumplir condicin
]
End If

[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:

Expresion To Expresion

Expresion[, Expresion]

En todas estas formas, Expresion debe ser del mismo tipo que la
ExpresionaProbar.

Combinacin de las anteriores

Is Operador-de-relacion Expresion

Observe algunos ejemplos a continuacin


Ejemplos de Expresiones
En sentencia Case

Significado

Case Is < 4

la ExpresionaProbar sea menor que 4

Case Is >= Q

ExpresionaProbar sea mayor o igual que valor Q

Case 3

El valor de ExpresionaProbar sea igual a 3

Case W To 52

ExpresionaProbar est ubicado en el rango: valor de W hasta 52 mximo

Case 7, A

ExpresionaProbar sea igual a 7 o igual al valor de A

Case si,SI

ExpresionaProbar sea si o sino SI

Case 6, -12 To 4

ExpresionaProbar sea igual a 6, o que se ubique en rango -12 a 4

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

Requerimiento

Cantidad

Gua de Laboratorio #01 de LP1

PC con Microsoft Visual Studio 2010 .NET instalado

Memoria USB

Computadora con acceso a Internet

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.

En el men Inicio de Windows, localice a Microsoft Visual Basic 2010 dentro del listado de accesos de
programas instalados

2.

Aparecer la pantalla de bienvenida que es la interfaz para Visual Studio, tambin conocida como
Entorno de Desarrollo Integrado o IDE.

3.

Haga clic en el men Archivo y luego sobre opcin Nuevo Proyecto

4.

Aparece el cuadro de dilogo Nuevo proyecto (Ver Figura 1.1).

5.

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.

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.

7.

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

PROPIEDAD

Nuevo VALOR

Form1

Text

Pruebas
variables

BackColor

Un color Personalizado a su
gusto

Name

btnContar

Text

Contar

Name

btnReinicio

Text

Reiniciar conteo

Name

btnFin

Text

Salir programa

Button1
Button2
Button3

de

mbito

de

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

Evento/Nivel

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

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

Click

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

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.

De clic en la opcin Archivo/Proyectos y soluciones recientes.

2.

En esta lista de proyectos recientes, localice el nombre del proyecto (archivo Ejemplo1.vbproj) utilizado
hasta ahora.

3.

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

4.

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.

5.

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.

6.

Guarde los cambios del proyecto actual.

7.

Luego aplique al Form2 el diseo definido en Figura 1.4.

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)

Name

Form2
Label1

Text
Calculo del Monto a
Prstamo

lblEmpresa

Lenguajes de Programacin 1

Nombre de Empresa:

15

Enabled
pagar por un

Checked

Gua # 01: INTRODUCCION A VISUAL BASIC .NET


(propiedades)
(controles)

Name

Text

Label2

lblMonto

Monto prstamo ($)

Label3

lblTiempo

Tiempo (aos)

Label4

lblTasaInter

Tasa Interes:

RadioButton1

rdbInteres1

12 %

RadioButton2

rdbInteres2

23.5 %

RadioButton3

rdbInteres3

Otro, indique:

TextBox1

txtEmpresa

(vacio)

TextBox2

txtMonto

(vacio)

TextBox3

txtTiempo

TextBox4

txtTasaInterEX

Button1

btnAnalisis

Analisis Financiero

Button2

btnFin

Salir del programa

ListBox1

lstResul

Enabled

Checked

True

False

False

* 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

(Declaraciones)

Private TasaI As Decimal


rdbInteres3
If rdbInteres3.Checked = True Then
txtTasaInterEX.Enabled = True
txtTasaInterEX.Focus()
Else
txtTasaInterEX.Text = "0"
txtTasaInterEX.Enabled = False
End If

CheckedChanged

rdbInteres1

Click

rdbInteres2

Click

btnFin

Click

TasaI = 0.12

TasaI = 0.235

End 'Fin de aplicacin

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.

Abra nuevamente el proyecto creado en la parte 1, y agregue un nuevo formulario.

2.

Luego disee el siguiente esquema de objetos (mostrado en Figura 1.5) en este nuevo form (Form3)

(Propiedad)
(controles)

Name

Form3

Figura 1.5: Diseo de controles del Form3

3.

Text
Calculo
de
UV a cursar

Label1

lblApe1

1er Apellido:

Label2

lblApe2

2do Apellido:

Label3

lblNom

Nombres

Label4

lblCUM

Valor
CUM

TextBox1

txtApe1

(vacio)

TextBox2

txtApe2

(vacio)

TextBox3

txtNom

(vacio)

TextBox4

txtCUM

0.0

TextBox5

txtResul

Resultado de
evaluacion

Button1

btnAnalisis

Calcular UV

Button2

btnFin

Salir
del
programa

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

Lenguajes de Programacin 1

18

Enabled

de

False

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.

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.

5.

En evento Click del botn btnFin redacte un mensaje de despedida y realice el final de ejecucin

EJERCICIOS A REALIZAR AL FINALIZAR PROCEDIMIENTO:


A.

B.

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

+ 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

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

3.0 a 5.99

Ms dedicacin estudiante, debe mejorar sus notas en esta


materia y las del resto del Pensum

0.00 a 2.99

Pongase las pilas mi hijito, ya no est en el Kinder No se


convierta en un veterano de la U

Carita de ejemplo

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

También podría gustarte