Documentos de Académico
Documentos de Profesional
Documentos de Cultura
NET 2005
Primera Parte
Primera Parte
Tabla de Contenido
Tabla de Contenido____________________________________________________________ 2
I.- Definicin de la Plataforma .NET _____________________________________________ 5
1.1.- Componentes de la Plataforma:__________________________________________________ 5
1.2.- Capas principales de la plataforma .NET__________________________________________ 7
1.- Capa de lenguajes: ______________________________________________________________ 7
2.- .NET Framework (Infraestructura y servicios): ______________________________________ 7
3.- Capa de servicios (Services): ______________________________________________________ 7
4.- Biblioteca de clases base (BCL/Base Class Library): __________________________________ 8
5.- Motor comn de ejecucin (CLR/Common Language Runtime): _______________________ 8
6.- Soporte operativo: ______________________________________________________________ 8
1.3.- Capa de lenguaje de .NET _____________________________________________________ 10
Primera Parte
7.- Trabajando Con Clases y Objetos en Visual Basic .Net 2005 ______________________ 110
Tareas:____________________________________________________________________ 118
Bibliografa ________________________________________________________________ 119
Primera Parte
Primera Parte
Primera Parte
Primera Parte
muy importante considerar y tener en cuenta, que existen mucho tecnicismos y exigencias de
nivel de programacin, los cuales se acoplan a esta tecnologa que propone Microsoft, lo cual es
necesario conocer en toda su dimensin (factor que ayudara a tener una visin clara del poder
de procesamiento de las instrucciones de esta fabulosa herramienta de trabajo).
1.- Capa de lenguajes: La capa de lenguajes esta integrada por la CLS (Especificacin
comn para lenguajes, Common Language Specification) y los lenguajes de programacin
compatibles con ella. La CLS es una especificacin abierta de Microsoft que los lenguajes deben
cumplir para ser considerados .NET. A la fecha Microsoft ha publicado cinco lenguajes y sus
compiladores, los cuales son:
Visual Basic.
C#.
C++.
Visual J#.
JScript.
Otros fabricantes pueden implementar sus propios lenguajes .NET siempre y cuando respeten
los lineamientos CLS y proporcionen los compiladores para generar el cdigo intermedio
reconocido por .NET.
Primera Parte
Primera Parte
NOTA
Microsoft ha denominado de diferentes formas a los productos y lenguajes que componen la
tecnologa .NET:
En la versin 1.0 de .NET Framework los lenguajes eran:
Visual Basic.NET.
Visual C#.NET.
Managed C++.
Mientras que el entorno integrado de desarrollo se conoca como Visual Studio.NET 2002.
Por ser productos nuevos, exista la necesidad de diferenciarlos de las propuestas anteriores;
incluso internamente en la compaa se penalizaba a quien osara referirse a Visual
Basic.NET como Visual Basic 7.
En la versin 1.1 de .NET Framework, los lenguajes pasaron a ser:
Visual Basic.NET.
Visual C#.
Managed C++.
Y se trabajaba con Visual Studio. NET 2003.
Ahora, en la versin 2.0 de .NET Framework, las versiones anteriores de los lenguajes,
resultan anacrnicas, por lo que se conocen como Visual Basic, C# y C++. Se
elimina tambin el .NET en Visual Studio; el nombre de la penltima versin queda
entonces como Visual Studio 2005.
Primera Parte
Visual Basic
C#
C ++
J++
JScript
Otros
.NET Framework
Web Forms
Web Service
Windows
Forms
Console
Sistemas Operativos
Windows (2003, 2000, XP)
10
Primera Parte
capacidades mnimas soportadas por el motor de ejecucin de .NET (CLR). Todas las
herramientas y componentes de .NET, por ejemplo, conviven y utilizan las clases de BCL,
adems de ser orientadas a objetos; esto porque CLS lo determina como condicin para formar
parte de la tecnologa .NET. El cumplimiento de estas reglas garantiza un comportamiento
homogneo de todos los componentes y herramientas de desarrollo .NET.
Todos los lenguajes .NET liberados por Microsoft cumplen con la CLS; esto convierte a
Microsoft .NET en un ambiente multi-lenguaje; es decir, un entorno donde todos los lenguajes
permiten hacer prcticamente lo mismo dado que cumplen con un mismo marco original de
trabajo y funcionamiento (CLS).
NOTA:
C# se lee C Sharp o C Gato; el signo # corresponde al de las partituras
musicales.
11
Primera Parte
Visual Studio 2005 es semejante a la versin 2003, existen muchas mejoras y diferencias
importantes, como por ejemplo la declaracin de variables, el ambiente, el entorno para las bases
de datos, as como los controladores que se utilizan ahora.
12
Primera Parte
NOTA
Este Tutorial esta desarrollado para la versin de Visual Studio .Net Standard y
la versin Profesional. Es posible que encuentre algunas diferencias si utiliza
otras ediciones. Si emplea la versin Express quizs vea que las caractersticas
varan de forma significativa.
13
Primera Parte
14
Primera Parte
Visual Basic 2005 ya no soporta el tipo de dato Variant. Usted deber declarar todas las
variables utilizando Dim y la palabra clave As para identificar el tipo de datos que contendr.
Existen muchos nuevos tipos de datos fundamentales, y algunos de los ms antiguos ahora tienen
soporte para diferentes rangos. Por ejemplo
a.- Existe un tipo de datos Short de 16 bits.
b.- Un Integer de 32 bits.
c.- Otro Long de 64 bits.
d.- El tipo Currency de visual Basic 6 ha sido reemplazado por Decimal.
A partir de Microsoft Visual Studio .Net 2002, Visual Basic ofreci una instruccin de programa
y una configuracin del compilador llamada Option Strict, la cual (cuando estaba habilitada)
requera que las variables a agregar, comparar o combinar fueran del mismo tipo de datos. En
Visual Basic 2005 esta configuracin del compilador esta desactivada de manera predeterminada,
lo que significa que variables de diferentes tipos de datos pueden combinarse en ciertas
circunstancias sin generar error de compilacin (Para revisar la configuracin del compilador,
haga clic en el comando Opciones del Men Herramientas. Expanda la categora Proyectos y
Soluciones, y hacer clic en la opcin valores predeterminados de Visual Basic).
Los Diseadores de Visual Basic Studio ofrecen esa configuracin como una proteccin
Profesional contra errores provocados por la falta de coincidencia entre los tipos, y puede ser
una medida de seguridad til en proyectos de programacin ms grandes.
Si usted habilita la Option Strict necesitara familiarizarse con funciones de conversin de tipos
de datos como:
a.- Cint.
b.- Clong.
c.- Ctype, etc.
Todo esto para lograr la compatibilidad de los datos.
Lo recomendable es dejar configurado Option Strict como false, ya que en algunos casos se vera
que los programas no se ejecutan en orden o forma adecuada o correcta (en caso de tener Option
Strict configurado como True).
Visual Basic 2005 ya no proporciona palabras claves integradas, como Abs o Cons, para las
operaciones Matemticas. En su lugar se deben utilizar los mtodos de la biblioteca de
clase System.Math de .Net FrameWork. La operacin de estos mtodos es similar a la de las
funciones ya conocidas de Visual Basic 6, a pesar de que algunos nombres han cambiado, por
ejemplo: Sqr ahora es Sqrt.
Ing. Giovanni Senz
15
Primera Parte
Visual Basic 2005 ofrece smbolos de acceso directo para ciertas operaciones matemticas
bsicas, como suma (+), resta (-) y multiplicacin (*). Con ayuda de estos accesos directos es
posible escribir una formula como X = X + 2 usando la sintaxis X += 2 (si usted a programado
en Lenguaje C o en Java o C#, es exactamente las caractersticas de los operadores
Monarios).
Visual Basic 2005 incluye un Objeto MessageBox, que es una alternativa para la funcin
MsgBox y sirve para desplegar cuadros de mensajes. El mtodo a utilizar para este propsito es
MessageBox.Show.
Tabla #2.1.-: Actualizacin de Visual Studio .NET 2005.
Palabras
Nmeros
Fechas
Propiedades
Valores u otros.
16
Primera Parte
En el caso de Visual Basic 6 y versiones anteriores a esta, era posible la declaracin de forma
implcita, es decir, no era necesario colocar la palabra Dim. Lo cual era flexible, pero de alto
riesgo ya que se perda el control, ya que se poda confundir los nombres de las variables (ms
comn en el caso de no dominar las tcnicas de programacin) el cual a la larga era no era fcil
de poder encontrarlo.
Para declarar la variable en visual Basic 2005, se debe considerar la palabra predefinida (o
palabra reservada) Dim, la cual significa dimensin. La cual le indica al compilador que se esta
reservando espacio en la memoria para que la utilice una variable. Posteriormente dejando un
espacio en blanco y a continuacin se escribe el nombre de la variable (tiene que asegurarse,
de que el nombre de la variable no sea el nombre de una palabra reservada, ya que esta dar
problemas, generara error, al identificar que esta palabra ya tiene una funcin preestablecida).
Nuevamente se escribe un espacio en blanco y a continuacin la palabra reservada As la cual es
utilizada para definir el tipo de dato que desea definir (una vez que usted lo hace da un espacio en
blanco y automticamente Visual Basic 2005 le presenta posibles tipo de datos, esto ya lo hacen
las versiones anteriores, pero observe usted mismo que es lo que sucede y vea la diferencia con
las otras versiones en caso de tener experiencia con versiones anteriores a la 2005).
NOTA
En algunas versiones anteriores de Visual Basic no se requiere tipos de variables
especficos (como String o Integer) no son requeridos; la informacin reside simplemente
en un tipo de datos genrico (gran consumidor de memoria) llamado Variant, el cual poda
contener datos de cualquier tamao o formato. Visual Basic 2005 (como se haba explicado
anteriormente) no cuenta con soporte para este tipo de datos. La razn estriba en que, a
pesar de ser prctico para los programadores novatos o principiantes de programacin, ya
que su diseo hace que se haga una reserva de memoria, lo cual implicaba que se
sacrificaba al hacerse la reserva de memoria, de tal forma que eso se sumaba al momento
de compilar el programa, como resultado, haca ms lenta la ejecucin de la aplicacin y de
hecho, se rompe con el esquema de programacin de instruccin eficientes (esto no era
control de calidad de instrucciones).
Pero no hay que negar, el tipo Variant permita que las variables que no fuesen declaradas
o se decidiera utilizar este tipo, considerar convertirse de un tipo a otro con mucha facilidad
(considerar fechas, datos numricos o caracteres, el consideraba todo eso), lo cual suele
provocar resultados inesperados, pero resolva de alguna forma el no declarar un tipo de
dato en una variable.
17
Primera Parte
18
Primera Parte
permitir y tener un manejo eficiente de todos los datos de Visual Basic .Net 2005, existen otras
categoras que se pueden utilizar para las variables. Con otros tipos de datos presentan otras
posibilidades, ya que el repertorio de Visual Basic .Net 2005 considera los tipos de datos de
versiones como BASIC o de Visual Basic versiones anteriores (recuerde lo que se explicaba del
cambio de Variant), lo que permite el procesamiento ms eficiente, y esta hecho para las
computadoras que soportan 64 bits (inclusive).
La tabla anterior mostraba el listado de tipos de datos de Visual Basic .Net 2005 (recuerde que
usted puede crear sus propios tipos de datos, si ha trabajado en otros lenguajes de programacin
o tiene experiencia en programacin sabe a lo que me refiero). Los Programadores
experimentados notarn cuatro tipos de datos nuevos de Visual Basic 2005, los cuales son:
1.- Byte
2.- UShort
3.- UInteger
4.- ULong
SByte permite valores de byte firmados, es decir, nmeros positivos y negativos.
UShort, UInteger y ULong son de tipos sin firmar, eso significa que pueden tener nmeros
negativos (sin embargo, tipos de datos sin firmar ofrecen dos veces el rango de nmeros
positivos que sus contrapartes firmados, como se puede observar en la tabla anterior).
Recuerde, que para la eficiencia de sus programas depender del tipo de dato que seleccione
usted, es lgico que si los datos son cortos y exceden de un valor de mil, y siempre son enteros, lo
recomendable es utilizar Short, por ejemplo. A partir de este momento, usted tiene el control de
esas decisiones.
NOTA
El tamao de almacenamiento variable y se mide en bits. La cantidad de espacio
requerido para almacenar un carcter de teclado estndar (ASCII) en la memoria
es de 8 bits, lo cual equivalente a 1 Byte.
2.3.- Constantes
Las constantes son identificadores que nunca cambian su valor, pero en algunos casos, tambin
son llamadas variables que no cambian de valor.
Si una variable de su programa contiene un valor que nunca cambia (como , el cual representa
una constante o entidad matemtica fija), podra considerar almacenarlo como una constante en
lugar de una variable.
Las constantes son nombres significativos que reemplazan un nmero o una cadena de texto que
no cambian. Su utilidad radica en que incrementa la legibilidad del cdigo del programa, pueden
reducir errores de programacin y facilitan la realizacin posteriores cambios globales. En
Ing. Giovanni Senz
19
Primera Parte
muchos sentidos las constantes pueden ser vistas como variables, pero es imposible modificar su
valor en tiempo de ejecucin. Se declara con la palabra clave o predefinida Const, como se
muestra a continuacin en el siguiente ejemplo:
Const Pi As Double = 3.141592265
Const IMP As Double = 0.15
Const Salir As Integer = 0
Para conseguir que todas las constantes estn disponibles para todos formularios y mdulos de un
programa (no solo para el formulario Form1), cree la constante en un mdulo de cdigo,
antecedido con la palabra clave Public. Por ejemplo:
Public Const Pi As Double = 3.141592265
Public Const IMP As Double = 0.15
Public Const Salir As Integer = 0
20
Primera Parte
Descripcin
Si las dos expresiones condicionales son trae,
entonces el resultado es True.
Si cualquiera de las expresiones condicionales
Or
es False, entonces el resultado es Trae. Si la
expresin condicional es True, entonces el
resultado es False.
Si la expresin condicional es False, entonces
Not
el resultado es True. Si la expresin
condicional es True, entonces el resultado es
False.
Si una y slo una de las expresiones
Xor
condicionales es True, el resultado es True. Si
las dos son True o las dos son False, el
resultado es False (Xor equivale a un Or
excluyente).
Tabla #2.5.- Operadores Lgicos de Visual Studio .NET 2005
En los ejercicios prcticos se estar mostrando el uso e implementacin de cada uno de los
operadores.
21
Primera Parte
10
b.- Tambin puede utilizar cuando el usuario desea leer una cantidad X de valores, tal como leer
cinco notas de programacin Orientada a Objetos o Contar la cantidad de productos vendidos
en un almacn, u otros.
1
c.- Otro caso pudiese ser, cuando tenemos un inicio que no es la unidad (no es el punto inicial el
nmero cero), como por ejemplo, sumar todos los nmeros que existentes entre el nmero
Ing. Giovanni Senz
22
Primera Parte
100 y 104, otro ejemplo, partiendo de que en Managua tenemos dos millones de personas,
cuanto tiempo hace falta para que la poblacin llegue a ser de seis millones en esta ciudad.
100
101
102
103
104
For i = 1 To 20
Me.TextBox3.Text = Me.TextBox3.Text & Cont & ".- " & i & Encapsular
Cont += 1 'Cont = Cont + 1
Next i 'Fin del Ciclo For
23
Primera Parte
N de Factura
Monto de venta total de la Factura
1
C$ 1,500.33
2
C$ 755.56
3
C$ 134.77
4
C$
98.99
5
C$ 905.57
Tabla #3.1.- Valores de las Facturas - Farmacia Nueva Vida.
I.- Para identificar lo que vamos hacer, tenemos que analizar textualmente lo que nos pide el
problema, si leemos en la primera lnea podemos encontrar:
1.- Nos dicen que son cinco facturas (por este detalle podemos arrancar) y que estas deben
ser controladas.
2.- Que es el total de esas facturas lo que nos da como valor de entrada.
En la lnea dos y tres se expresa el detalle de las operaciones que se deben realizar:
3.- Leer las cinco facturas.
4.- Luego de haber ledo esas facturas, sumarlas y encontrar el valor total del monto de esos
datos.
Con lo anterior podemos observar:
Lnea 1, se debe declarar una variable que almacene las cinco facturas.
Lnea 2, las facturas para ser ledas, tenemos que utilizar un ciclo, para poder leer la
primera, la segunda, la tercera, cuarta y quinta factura (no vale la pena utilizar una
variable para cada factura, ya que si en un momento determinado no son cinco las
facturas a leer, sino que se convierten en mil, entonces se vera con la necesidad de
declarar mil variables, por lo tanto ese mtodo no es adecuado).
Lnea 3, Confirma que debemos utilizar un ciclo.
Lnea 4, que debemos sumar esas facturas para encontrar la suma total (de ellas
todas las facturas).
II.- Una vez detallado todo lo que tenemos que hacer, procedemos a desarrollar el Algoritmo,
para fines y efectos, utilizaremos el mtodo de pseudo cdigo:
Ing. Giovanni Senz
24
N
1
Primera Parte
Debemos leer cada una de las facturas, como estamos utilizando Arreglos, en
cuanto se lea el valor, este debe ser sumado, porque sino se perder el valor actual
de la factura.
25
Primera Parte
Paso Dos: Seleccionar que desea crear una Aplicacin en Visual Studio .Net, recuerde que es
Visual Basic .Net el que utilizara usted.
Paso Tres: Asegurarse que es una Aplicacin en Visual Basic .Net, y que esta debe ser una
aplicacin de Visual Basic para Windows.
26
Primera Parte
Paso Cuatro: a continuacin, aparecer el formulario (ahora es la Clase Superior) con sus
atributos (propiedades) y el ambiente que aparece por defecto en Visual Basic.
Net.
Ventanas de
Propiedades de
Visual Basic. Net
Explorador de
Soluciones de
Visual Basic. Net
Ventanas de
Propiedades de
Visual Basic. Net
Paso Cinco: procedemos a definir que objetos utilizaremos para la lectura de datos en Visual
Basic. Net. Como son muchas las opciones, entonces utilizaremos en un principio al estilo clsico
InputBox, e iremos mostrando en pantalla y en un Textbox lo que el usuario introduzca como
factura.
Inicie de forma sencilla, busque la Propiedad Text del Formulario, ah digitalice, Control de
Factura de la Farmacia Nueva Vida.
Nota: Ahora todos los Objetos en Visual Basic tienen la Propiedad Text (la cual
muestra mensaje al usuario por parte del objeto creado), ya no se utiliza
Caption, este es el nuevo estndar que se defini para Studio .Net
27
Primera Parte
Paso
Tabla #3.3.- Pasos para Crear agregar Objetos Botones y Etiquetas al Formulario
Nueva Vida.
Usted entonces ahora podr ver el siguiente formulario, ya diseado:
28
Primera Parte
De tal forma que se podr observar el formulario como aparece arriba de este texto.
29
Primera Parte
Tabla #3.4.- Pasos para Crear agregar Objetos TextBox y sus propiedades para
el Formulario Nueva Vida.
Ahora usted vera el siguiente formulario:
Nota:
Una buena recomendacin, es dejar la
propiedad del ReadOnly = True en
el TextBox, para este caso es
correcto, no deseamos que el usuario
tenga acceso a la Escritura.
30
Primera Parte
End Sub
31
Primera Parte
Al hacer clic en Leer se genera la ventana de mensaje que le pide digitalizar la primera factura.
32
Primera Parte
Ha podido desarrollar la primera aplicacin de Visual Basic .NET 2005 en este curso.
Comentarios:
1.- Sobre el uso de InputBox, esta es una instruccin de Entrada de Datos, existe una
especificacin puntual para esta funcin, la cual se explicar en Clases (para aquellos
estudiantes que estn cursando), si no tendr que investigar por su cuenta como se definen
estos parmetros.
33
Primera Parte
2.- Para mostrar la salida de Datos, se utiliza MessageBox, como habiamos explicado
anteriormente, esta es una nueva opcin que existe en .NET 2005, la cual es una
buena opcin, pero si no se siente comodo y desea seguir utilizando lo tradicional,
puede utilizar el MsgBox, este procedimiento conserva las mismas caracteristicas
de las versiones anteriores (esto se explicara en el curso y tendremos varios
ejemplos en este sentido).
34
Primera Parte
35
i = 1
Primera Parte
s1 = s1 * 0.3
s2 = s2 * 0.3
Ex = Ex * 0.4
NF = s1 + s2 + Ex
Me.TextBox5.Text = Me.TextBox5.Text & " Est[" & i & "]=" &
NF & Chr(13) & Chr(10)
Suma = NF + Suma
'Next 'Fin de la Lectura de las notas
i += 1 Esta es la Condicin para movernos en el ciclo Expresin3
Loop Esta es la Palabra Reservada para el Cierre del Ciclo.
Una Variante al programa anterior, el de la suma de las facturas, es hacer el ajuste en el Botn
Leer, de tal forma que el cdigo se vea como este:
36
Primera Parte
End Sub
Ahora que ya posee la teora de como trabajar el ciclo Do While, hacer los ajustes al programa
anterior (al que fue programado con While) y complalo, luego, verificar todos los detalles y
recordar crrelo paso a paso, para que ver, identificar y detectar las diferencias entre el for y el
do while.
37
Primera Parte
38
Primera Parte
i = 1
Ahora que ya se conoce como trabajan los ciclos, haz los ajustes al programa anterior y
complalo, verifica todos los detalles y recuerda crrelo paso a paso, para que ver la diferencia
entre el for, el do while y ahora el Do - Loop - While.
39
Primera Parte
40
Primera Parte
Esta funcin requiere de tres argumentos, la condicin por verificar, que devolver si la
condicin es cierta y qu devolver si es falsa. Por lo tanto, en este ejemplo el valor de ElColor
permanece igual, a menos que sea de 15 o ms, en cuyo caso se pone 1.
41
Primera Parte
Paso 1:
Vamos a crear un nuevo formulario, entonces a este formulario agreguemos los siguientes
detalles:
Agregar dos
Label
Insertar un
TextBox
Incluir dos
Botones
De acuerdo como se hizo anteriormente, las propiedades para los objetos son las siguientes:
Objeto
Label1
BackColor
ForeColor
Text
Label2
BackColor
ForeColor
Boton1
Text
Boton2
Text
Tabla 3.6.- Control de Atributos Programa 3.
Ing. Giovanni Senz
Valor de la propiedad
Manejo de Sentencias de
Control Condicionales en
Visual Basic .Net
Info
Desktop
Digite un Valor Numerico:
Control
ControlText
Analizar valor
Salir
42
Primera Parte
Paso2:
Ahora que ya se tiene el formulario, con todas sus propiedades, se procede a la programacin de
los eventos, el cual se describe a continuacin:
a.- Dar clic al Botn que tiene como Nombre Boton1, ah agregamos el siguiente cdigo:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
'Este programa identifica si un numero es positivo o negativo en base al
valor que digitalice el usuario.
Dim num As Integer = 0 'Declaracin del nmero a leer
'Guardar el valor que digitalice el usuario
num = (CInt(Me.TextBox1.Text)).ToString
'Preguntar por el valor que digitalizo el usuario
If (num > 0) Then 'Si es mayor que cero
MessageBox.Show(" El Nmero " & num & " es Positivo", "Analisis de
Numeros", MessageBoxButtons.OK, MessageBoxIcon.Information)
ElseIf (num < 0) Then 'Si es menor que cero
MessageBox.Show(" El Nmero " & num & " es Negativo", "Analisis de
Numeros", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Else 'Si es el cero
MessageBox.Show(" El Nmero " & num & " es el CERO", "Analisis de
Numeros", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
End Sub
43
Primera Parte
Paso 3:
a.- Ahora que ya se lograron incluir todos los detalles, proceder con la ejecucin. Para lograr este
fin, digitalizar el nmero 99, de tal forma que se pueda observar lo siguiente:
b.- Hacer Clic en el botn Analizar valor, al realizar esta operacin suceder lo siguiente:
44
Primera Parte
45
N
1
Primera Parte
Debemos leer cada una de las facturas, como estamos utilizando Arreglos, en cuanto se
lea el valor, este debe ser sumado, porque sino se perder el valor actual de la factura.
For i=1 Hasta 5
Inicio_Ciclo_For
Do
2.1.- Imprimir Digitalizar el Valor & i & =
2.2.- Leer Fact
2.3.- If Fact <= 0 Then
MessageBox.Show("La Facturacion digitalizo :
" & Fact, "Error en la Facturas ",
MessageBoxButtons.OK,
MessageBoxIcon.Error)
Sal = 1
Else
Sal = 0
End If
Loop While (Sal = 1)
2.4.- suma = suma + Fact
Fin_del_Ciclo_For
A continuacin, procedemos a mostrar los resultados del Ciclo:
3.1.- Imprimir El Monto total de Venta es: & suma
Fin_del_Programa
4
Tabla #3.7.- Ajuste al Algoritmo del Programa1.
3
Ahora que ha sido posible Mostrar los ajustes del Algoritmo, irse al Formulario correspondiente a
la Facturacin de la Farmacia Nueva Vida, y haga el siguiente ajuste al Cdigo y Clase Principal
de ese Formulario:
46
Primera Parte
As
System.Object,
ByVal
As
Dim i As Integer = 0
Dim Sal As Integer = 0
Dim Cant As Short = 0
i = 1 'Condicin INICIAL - EXPRESION1
Cant = InputBox("Proporcione la cantidad de Facturas: ")
Do
Do
Fact = InputBox("Control de Factura " & i & ": ", "Digitalize Factura")
If Fact <= 0 Then
Sal = 1
MessageBox.Show("La Facturacin digitalizo : " & Fact,
"Error en la Facturas ", MessageBoxButtons.OK,
MessageBoxIcon.Error)
Else
Sal = 0
End If
Loop While (Sal = 1)
Suma = Suma + Fact
Me.TextBox1.Text = Me.TextBox1.Text & "Factura " & i & "= " & Fact &
Chr(13) & Chr(10)
'Condicin PARA ALTERAR EL CICLO - EXPRESION3
i += 1
'i = i + 1
Loop While (i <= Cant) 'Condicin PARADA - EXPRESION2
End Sub
Una vez finalizado los ajustes, proceda a ejecutar la aplicacin y vea el comportamiento del
Sistema (para ver ms detalles, le recomendamos que corra paso a paso con F8).
47
Primera Parte
48
Primera Parte
49
Primera Parte
Note que es posible revisar un rango de valores usando To. Los operadores de
comparacin como > y < tambin son aceptables. Usted puede colocar diversos valores de
objetivos o rangos dentro de un solo Case separndolos con comas. Tambin puede haber
clusula Case Else que preceda al enunciado a enunciados que se deben ejecutar si no se
satisface ninguna de las condiciones Case anteriores.
50
Primera Parte
Como es conocido por todos los programadores, las instrucciones son divididas en dos categoras,
las cuales son:
I.- Instrucciones de Eleccin.
II.- Instrucciones de Bucles (o sentencias de control):
II.1.- Sentencias de Control Condicionales.
II.2.- Sentencias de Control Cclicas.
En cada caso, existen variaciones de tipos, y en base a las necesidades y los requerimientos se
deben hacer ajustes, a esto se agrega las caractersticas que se deben seguir al programar en
Studio .NET.
Funcin
CBoll
CByte
CChar
CDate
CDbl
CInt
CLng
CSht
CStr
Descripcin
Realiza una conversin a Boolean. Lo que se interprete como False o 0 se
establecer como False, lo que no ser True.
Realiza una conversin a Byte. Se perder cualquier valor mayor que 255,
o cualquier fraccin.
Realiza una conversin a un carcter. Si el valor es superior a 65,535, se
perder. Si convierte un String, slo se convertir el carcter.
Realiza una conversin a Date. Una de las funciones de conversin ms
potentes. CDate puede reconocer algunos de los formatos de uso comn
para indicar una fecha.
Realiza una conversin a Double.
Realiza una conversin a Integer. Las fracciones sern redondeadas al
valor entero ms cercano.
Realizar una conversin Long. Las fracciones sern redondeadas al valor
entero ms cercano.
Realizar una conversin Short. Las fracciones sern redondeadas al valor
entero ms cercano.
Realizar una conversin String. Si el valor es Date, contendr el formato
de fecha corta.
51
CType
Primera Parte
Realiza una conversin a cualquier tipo. sta es una potente funcin que
le permite convertir cualquier tipo de dato a otro. Por ello, la sintaxis de esta
funcin es un tanto distinta de las dems.
Funcin
Len
Chr
Asc
Left
Right
Mid
Descripcin
Ejemplo
intValor = Len(Hola),
(intValor = 5)
strValor = Chr(56),
(strValor = A)
intValor = Asc(A),
(intValor = 56)
Devuelve caracteres de una cadena, a strValor = Left(Hola, Nicaragua, 2),
partir del extremo izquierdo. Tambin (strValor = Ho)
requiere la cantidad de caracteres por
devolver.
Devuelve caracteres de una cadena, a strValor = Right(Hola, Nicaragua, 4),
partir del extremo derecho (lo inverso (strValor = agua)
de Left). Tambin necesita la cantidad
de caracteres por devolver.
Devuelve caracteres contenidos en la strValor = Mid(Hola, Mundo, 4, 5),
cadena. Devuelve cualquier cantidad de (strValor vale a Mu).
ellos. La sintaxis de Mid es sReturn = strValor = Mid(Hola, Mundo, 7),
Mid (cadena, Inicio [, Cantidad]), en (strValor vale a Mundo).
donde el Inicio es el carcter a partir
del cual devolver
la Cantidad
indicada de caracteres (incluyendo el
de Inicio). Tambin puede omitir a
Cantidad, y Mid devolver todos los
que haya a partir de Inicio.
Devuelve la cantidad de caracteres que
hay en una cadena.
Devuelve el carcter basado en el valor
Unicode indicado.
Devuelve el valor Unicode.
52
Instr
UCase
RTrim
Trim
LCase
LTrim
Primera Parte
53
Primera Parte
Funcin
IsArray
IsDate
IsNumeric
IsObject
TypeName
Now
Today
CSht
CStr
CType
Descripcin
Devuelve True si el parmetro es una matriz.
Devuelve True si el parmetro se reconoce como una fecha.
Devuelve True si el parmetro se reconoce como un nmero.
Devuelve True si el parmetro se reconoce como un objeto.
Devuelve el nombre del tipo de dato, por ejemplo, TypeName(strNombre)
devolver String.
Devuelve la fecha y hora en curso.
Devuelve la fecha actual, con la hora establecida a 0:00:00 a.m.
(medianoche).
Realizar una conversin Short. Las fracciones sern redondeadas al valor
entero ms cercano.
Realizar una conversin String. Si el valor es Date, contendr el formato
de fecha corta.
Realiza una conversin a cualquier tipo. sta es una potente funcin que
le permite convertir cualquier tipo de dato a otro. Por ello, la sintaxis de esta
funcin es un tanto distinta de las dems.
54
Primera Parte
Para demostrar que tan grande pueden ser los arreglos procesador, utilizara los mtodos Sort y
Reserve de la clase Array del entorno de Microsoft.Net de Frameword para reordenar arreglos
que contengan valores de nmeros enteros aleatorios de seis dgitos.
Por ltimo, es importante utilizar el Control ProgressBar para ofrecer al usuario una seal del
tiempo que tomar un proceso (Relacionado con algn arreglo o de otro tipo).
Notas:
Existen nuevas caractersticas de Visual Basic .Net en comparacin con versiones anteriores:
En Visual Basic .Net 2005 el numero base de los elementos de las celdas del arreglo es la Celda
Cero, ya no es aplicable la instruccin Option Base, la cual poda definir iniciar en la celda 0 o 1.
Un Obvio efecto secundario de los arreglos basados en cero es que la instruccin LBound siempre
devuelve un valor de 0, debido a que el lmite inferior de los arreglos siempre es 0 (sin embargo, la
Instruccin UBound continua devolviendo el ndice ms Alto del arreglo, el cual es igual al
nmero de elementos menos uno).
Ahora los arreglos pueden declararse y recibir asignacin de datos mediante el uso de las mismas
instrucciones de los programas. Por ejemplo, la sintaxis para declarar un arreglo miArreglo() y
aadir elementos de es:
Dim MiArreglo() As Integer = {7, 14, 21, 28}
La Instruccin Redim sigue siendo valida en Visual Basic .Net 2005, aunque no podr utilizarla en
la declaracin inicial del arreglo. Puede ser utilizada para modificar los lmites del arreglo, pero
no su nmero de dimensiones.
55
Primera Parte
Especifica
el nombre
del arreglo.
Especifica el
nivel de acceso
del arreglo.
Especifica el
tipo de datos
de los
elementos del
arreglo.
Especifica
el tamao
del arreglo.
(0)
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
Arreglo compuesto de nueve celdas, todo arreglo inicia de la posicin cero (0) y llega
hasta el valor N-1 (en nuestro caso es 9-1= 8)
Ing. Giovanni Senz
56
Primera Parte
TextBox1.Text = CStr(MiArreglo(2))
b.- Arreglos de Multidimensiones
Cmo utilizar arreglos multidimensionales
Ejemplo:
57
Primera Parte
(0,0)
(0,1)
(0,2)
(0,3)
(1,0)
(1,1)
(1,2)
(1,3)
(2,0)
(2,1)
(2,2)
(2,3)
(3,0)
(3,1)
(3,2)
(3,3)
99
100
98
96
33
38
39
31
25
21
24
27
80
83
85
99
Arreglo
Multidimensional,
en este caso es
de dos
dimensiones, y es
de 4X4.
Arreglo de dos
dimensiones, y es
de 4X4, ahora se
observan los
valores.
Cuando se declaran arreglos, por lo general es necesario incluir la informacin que se muestra en
la tabla siguiente en la declaracin:
Informacin necesario en
Descripcin
la declaracin de un
arreglo
El nombre que utilizar para representar su arreglo en el programa.
Nombre del Arreglo
En general, la nomenclatura de arreglos sigue las mismas reglas
Ing. Giovanni Senz
58
Primera Parte
Nmeros de Dimensiones
Nmero de Elementos
Los arreglos que contienen cantidades especficas de elementos se conocen como arreglos de
tamao fijo. Aquellos que contienen un nmero variable (es decir que pueden ampliarse
durante la ejecucin del programa) se denomina arreglos dinmicos.
Para referirse a los elementos de un arreglo puede utilizar el nombre de este y un ndice entre
parntesis. El ndice debe ser un entero o una expresin que d como resultado un
entero.
Por ejemplo, el ndice puede ser un numero (como 5), una variable entera (como Nm) o una
expresin (como nm-1); de hecho, suele utilizarse la variable contador de un bucle
ForNext. Por ejemplo, la instruccin siguiente asigna el valor Martha a un elemento dentro
de un ndice 5 en el ejemplo del arreglo Empleados de la seccin anterior.
Empleados(5)=Martha
Otro ejemplo, puede ser el caso de Matriz, en el cual se desea acceder a la celda (0,1):
Matriz (0, 1) = 100
59
Primera Parte
.
Dim Temperaturas(0 To 6) As Single
Luego en un Ciclo se requiere la Funcin UBound para identificar el mximo de elementos del
arreglo, esto se realiza de la siguiente forma:
UBound (NombredelArreglo) > Verifica el lmite superior <- Sintaxis de la Funcin
For i = 0 To UBound(Temperaturas)
.
.
Next
La funcin LBound, estrechamente relacionada con la anterior, confirma el limite inferior
del arreglo y sigue siendo valida en Visual Basic; sin embargo, debido a que todos los
arreglos Visual Basic ahora tienen un limite inferior de cero (0), la funcin simplemente
devuelve ese valor (0). Las funciones UBound y LBound tienen la siguiente sintaxis:
LBound(NombredelArreglo) > Verifica el lmite inferior <- Sintaxis de la Funcin
For i = LBound (Temperaturas) To UBound(Temperaturas)
.
.
Next
Para no redundar mucho, se inicia el primer Programa utilizando Arreglos. Siga los pasos que se
le indican:
Paso 1: Crear un Nuevo Formulario (en caso de Existir uno, agregarlos al proyecto, como se
muestra a continuacin):
Ing. Giovanni Senz
60
Primera Parte
61
Primera Parte
Se Agrego el
Formulario Form2
Paso 3: Ir al Icono de la Ventana del Explorador de Soluciones, y hacer Clic en el icono Ver
Cdigo, como se muestra a continuacin:
Ver pgina Siguiente:
Hacer Clic en ese
Icono Observe que
sucede
Paso 4: Ahora esta trabajando a Nivel de Cdigo, seleccione la opcin de Manejar eventos del
formulario Form2:
Ing. Giovanni Senz
62
Primera Parte
A continuacin, seleccione el evento en el cual se cargara el arreglo, para que este visible a la
forma desde el arranque del formulario Form2.
63
Primera Parte
Paso 5: En este momento seleccione el evento que se mostrara en pantalla, el cual se utilizara
para la programacin del arreglo (para este caso, de Form2, seleccione cuando se
cargue este, es decir el evento Load Observar que los eventos tienen un icono de
Rayo):
Observar la siguiente pgina, y vea con detalle como se agrega el bloque que corresponde al
evento cuando se cargue el Form2.
64
Primera Parte
Label1
BackColor
ForeColor
TextBox1
Text
Multicine
ReadOnly
ScrollBar
Tabla.- Control de Atributos Programa 4.
Valor de la propiedad
Inventario de Medicinas
Farmacia Nueva Vida.
Info
Desktop
True
True
Vertical
65
Primera Parte
66
Primera Parte
Nombre_Productos(4) = "Penisilina"
Nombre_Productos(5) = "Dulce sueo"
'Ahora utilizar las Funciones que se habian explicado anteriormente, como es
LBound y UBound
For i = LBound(Nombre_Productos) To UBound(Nombre_Productos)
'Asignarlo al Objeto TextBox1, celda a celda, es decir, uno a uno.
Me.TextBox1.Text = Me.TextBox1.Text & " Nombre Medicina[" & i + 1 & "]=" &
Nombre_Productos(i) & Chr(13) & Chr(10)
Next
End Sub
End Class
Paso 8: Si todo esta correcto, proceda a Correr el Programa, recuerde que puede Utilizar:
Ing. Giovanni Senz
67
Primera Parte
Como se puede Observar, se agregaron todos los elementos del arreglo Nombre_Medicina.
Recomendamos, que para hacer esta prctica ms gil, coloque un nombre representativo al
formulario Form2, como por ejemplo: Sistema de Control de Productos.
Paso 9: Ahora Agregue dos Objetos ms, un Label2 y un ComboBox1 (este es utilizado para
Visualizar datos, muestra como se puede deslizar a lo largo de sus elementos [es idneo
para arreglos]).
Ver siguiente pgina ->
Agregue un
ComboBox1 al
Formulario Form2
68
Primera Parte
Recuerde Agregar un
Label2
Label2
ForeColor
ComboBox1
Valor de la propiedad
Listado
De
Productos
Mediante un Combo:
Info (esto es opcional
para
usted
como
programador)
Desktop (esto es opcional
para
usted
como
programador)
Text
Paso 10: Al Agregue los dos Objetos ms (un Label2 y un ComboBox1), es que usted tenga una
manera adicional en la cual pueda observar los elementos del arreglo. Observe ese detalle
Ing. Giovanni Senz
69
Primera Parte
70
Primera Parte
Utilizando Combos,
mire como presenta
los datos este Objeto.
Paso 11: Que pasa si el Usuario quiere Hacer Clic sobre el ComBox1, y desea seleccionar ese
producto, y en base a este controlar esa celda del arreglo. Pues, para que no quede con la
duda, se agregaran otros eventos, todo basado en Arreglos.
a.- Seleccione el ComboBox1, como se muestra arriba.
71
Primera Parte
72
Primera Parte
Valor de la propiedad
Producto Seleccionado en
el Combo
73
Paso
12:
Primera Parte
al
evento
Private
Sub
ComboBox1_
74
Primera Parte
Al hacer Clic le mostrara la posicin actual en que se encuentra en el ComboBox1, esto porque se
selecciono Penicilina (recuerde que los arreglos inician desde la posicin Cero 0, no desde la
UNO 1:
Entonces al final Observara como se mostr la posicin y el contenido del Combo Box1.
75
Primera Parte
Tarea en Clase
Se requiere ahora hacer los clculos en base a valores reales, para tal fin debe declarar el
siguiente arreglo:
N
0
1
2
3
4
5
Para lograr este fin, usted tiene que disear las instrucciones necesarias:
a.- Para leer la cantidad de Unidades a comprar por Producto (puede utilizar InputBox o lo que
usted desee).
b.- Poder calcular el monto en base a las unidades seleccionada por el Usuario (solo el usuario
establece la cantidad de productos a comprar, y usted programa el precio, en este sentido la
recomendacin es utilizar arreglos).
c.- Debe presentar cuantos productos por unidad decidi el usuario, y eso se tiene que mostrar en
pantalla en un Textbox (puede usar como segunda opcin un Label).
d.- Presentar el desglose de cuanto es el monto por el producto seleccionado, es decir, si lleva
diez unidades, y selecciono amoxicilina, entonces, hay que hacer el clculo y presentar el
precio total, y luego en otro TextBox donde se mire todo el detalle a la suma a que asciende la
compra.
Por ejemplo:
76
Primera Parte
Esta es la salida que se espera que usted presente, incluir la opcin de salir del sistema.
77
Primera Parte
78
Primera Parte
79
Primera Parte
80
Primera Parte
81
Primera Parte
4.- Un paso muy importante, es que usted tiene que declarar una variable para guardar los
valores, la cual es:
Public Class Form1
'Esta Instruccion Crea una Arreglo llamado Temperaturas de Tipo Single
'Contiene siete elementos enumerados desde 0 hasta 6.
Dim Temperaturas(0 To 6) As Single
Correcto, es un arreglo, el cual guarda las temperaturas, esta declarado de tipo entero
corto y son siete celdas.
Tareas:
1.- Con qu Objetos se puede hacer un despliegue por columna y filas para presentar
la informacin al estilo de Access o Excel o SQL Server?.
2.- Ahora hacer un programa donde se muestre el nombre del producto, precio del
producto, impuesto del producto y valor total del producto, de tal forma que en el
mismo objeto se vean las columnas y filas de cada compra o factura (esto queda a
criterio de usted).
3.- Hacer este ejercicio #2, pero ahora utilizando WEB Forms.
82
Primera Parte
de
Funciones,
83
Primera Parte
84
Primera Parte
85
Primera Parte
parmetros
86
Primera Parte
End Function
87
Primera Parte
Observe que el valor que deseamos que devuelve la funcin hay que
almacenarlo en el propio nombre de la funcin, frMedia.
Ahora bien, observe el llamado que se hace a la funcin en el momento que se cargue
el formulario, la funcin fnMedia recibe por parmetro los valores (solo el nombre de las
variables que se recibirn), y como la funcin retorna siempre un valor se debe asignar
a una variable del mismo tipo de retorno que la funcin.
Private Sub Form2_Load(ByVal sender
System.EventArgs) Handles Me.Load
As
Object,
ByVal
As
88
Primera Parte
Si se observa bien, notara que usted la funcin puede tener mbito privado a nivel del
formulario (en este caso se observa que es Form2), pero es solo valida esta funcin
dentro del formulario, ya que si desea llevarlo a otros formularios, tendr que ser de tipo
Pblico.
89
Primera Parte
90
Primera Parte
MessageBox.Show("Tiene un impuesto de " & imp & " - Es Tasa regular ", "
Impuestos ", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If 'Fin de la sentencia de Control
End Sub ' Fin del Procedimiento ImpI
En el ejemplo dos, el procedimiento procSuma, recibe dos parmetros, uno es un
arreglo de tipo entero, y el segundo elemento es la cantidad de elementos (si se
observa realmente, para fines prcticos, esto ya lo podemos calcular con las funcin
UBound que se ha utilizado anteriormente, ya que se puede cuestiones de una mala
programacin, pero para fines y efectos, este es un ejemplo de lo que usted puede
llegar a desarrollar con procedimientos).
Aada un mdulo proSuma que se expone a continuacin:
Sub procSuma (ByVal x() As Integer, ByVal n As Integer)
Dim I, Suma As Integer
Calcular la suma de los valores de la matriz x
For i = 1 To n
Suma = Suma + x(i) Acumulador
Next i
MessageBox.Show( La suma del Vector es: & Suma, " Imprimiendo
resultado ", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Sub
Observe nuevamente, que el procedimiento tiene dos parmetros (esta variacin
se ha hecho slo por motivos didcticos). El primer parmetro es un arreglo de tipo
Integer y el segundo que indica su nmero de elementos. El procedimiento escribe el
resultado en una ventana MessageBox. Al final lo que se muestra es la suma de los
elementos del arreglo.
La llamada a este procedimiento puede ser de cualquiera de las dos formas siguientes:
procSuma (a, 3) Recuerde que ahora los procedimientos, los argumentos estn
entre parntesis.
Call procSuma (a, 3)
De acuerdo con esto, modifique el procedimiento Form_Load para que invoque al
procedimiento procSuma.
Private Sub Form2_Load(ByVal sender
System.EventArgs) Handles Me.Load
As
Object,
ByVal
91
As
procSuma a, 3
Primera Parte
End Sub
Si usted ve claramente en esta pantalla, vera que existen tres procedimientos, uno de ellos es el al
hacer click en el boton1, el otro es para mandar a imprimir en un textbox1 un arreglo y el ltimo,
manda a imprimir un arreglo a un ComboBox.
92
Primera Parte
End Sub
93
Primera Parte
94
Primera Parte
95
Primera Parte
96
Primera Parte
Ahora le aparecer en pantalla el modulo, pero le muestro como se vera cuando agregue el
cdigo.
d.- Ahora en el Formulario agregue el siguiente cdigo (en base a lo que observa usted en
pantalla y que se puede observar en el Inciso b):
Public Class MI_Form
Dim pr As Double
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
pr = Leer_Notas()
Imprimir(pr)
End Sub
Sub Imprimir(ByVal pr As Double)
Dim i As Single
Dim E As String
E = Chr(13) + Chr(10)
For i = 0 To cant - 1
Me.TextBox1.Text = Me.TextBox1.Text & n(i) & E
Next i
Ing. Giovanni Senz
97
Primera Parte
98
Primera Parte
Para poder hacer posible esta prctica, recuerde siempre seguir todos los pasos anteriormente
especificados y que son de base para la creacin de un Proyecto en Visual Basic .Net. A
continuacin se detallan las acciones a seguir:
a.- Crear un Proyecto con el Nombre de Mi Manejo_Modulos.
99
Primera Parte
100
Primera Parte
101
Primera Parte
Ahora le aparecer en pantalla el modulo, pero le muestro como se vera cuando agregue el
cdigo.
102
Primera Parte
d.- Ahora en el Formulario agregue el siguiente cdigo (en base a lo que observa usted en
pantalla y que se puede observar en el Inciso b):
Public Class MI_Form
Dim pr As Double
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
pr = Leer_Notas()
Imprimir(pr)
End Sub
Sub Imprimir(ByVal pr As Double)
Dim i As Single
Dim E As String
E = Chr(13) + Chr(10)
For i = 0 To cant - 1
Me.TextBox1.Text = Me.TextBox1.Text & n(i) & E
Next i
Me.TextBox1.Text = Me.TextBox1.Text & "El Promedio es: " & pr & E
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Me.Close()
End Sub
End Class
e.- En el caso del Modulo, agregue lo siguiente:
Module Module1
Public n(0 To 10), cant As Integer
Function Leer_Notas() As Double
Dim i As Integer
Dim s As Integer
Dim p As Double
cant = Leer_Cantidad()
Ing. Giovanni Senz
103
Primera Parte
For i = 0 To cant - 1
n(i) = InputBox("Digite la Notas " & " [ " & i + 1 & " ]: ", "Notas de POO")
s = s + n(i)
Next i
p = s / cant
Return (p)
End Function
Function Leer_Cantidad() As Integer
Dim c As Single
c = InputBox("Leer Cantidad de Notas", "Digite la Cantidad de Notas:")
Return (c)
End Function
End Module
104
Primera Parte
Problema #2
La Joyera Senz desea controlar las promociones que tiene para este mes en
productos de anillo, para tal fin desean un sistema que muestre el precio normal, el
precio Con dige, con esclava, con cadena y dige, y anillo de 14 K.T.v. Para este fin se
debe controlar todas las operaciones de venta y compra, as como aplicar impuestos
sobre la venta. En la tabla que sigue a continuacin se brindan los detalles:
N
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Modelo
Precio
normal
Anillo Excell
Anillo Ovalado
Econmico
Anillo Ovalado
Pequeo
Anillo Ovalado
Mediano
Anillo Ovalado
Grande
Anillo
Marquesa B1
Anillo
Marquesa B2
Anillo
Marquesa B3
Anillo
Marquesa B4
Anillo
Josu
Pequeo
Anillo
Josu
Extragrande
Anillo Setonaga
Pequeo
Anillo Setonaga
Mediano
Anillo Setonaga
Grande
Anillo ejecutivo
Grande
Anillo ejecutivo
Grande
Anillo
Tradicional
Pequeo
Anillo
Tradicional
Mediano
Anillo
Tradicional
Grande
Anillo
Tradicional
Extragrande
Anillo Trifsico
Pequeo
C$ 3,250.00
C$ 2,000.00
C$ 3,430.00
C$ 2,180.00
C$ 3,610.00
C$ 2,360.00
C$ 3,790.00
C$ 2,540.00
C$ 3,800.00
C$ 2,500.00
C$ 2,500.00
C$ 2,680.00
C$ 2,860.00
C$ 3,040.00
C$ 3,000.00
C$ 3,250.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,800.00
C$ 4,250.00
C$ 4,430.00
C$ 4,610.00
C$ 4,790.00
C$ 5,000.00
C$ 3,250.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,800.00
C$ 2,500.00
C$ 2,680.00
C$ 2,860.00
C$ 3,040.00
C$ 3,000.00
C$ 2,750.00
C$ 2,930.00
C$ 3,110.00
C$ 3,290.00
C$ 3,500.00
C$ 2,500.00
C$ 2,680.00
C$ 2,860.00
C$ 3,040.00
C$ 3,000.00
C$ 2,500.00
C$ 2,680.00
C$ 2,860.00
C$ 3,040.00
C$ 3,000.00
C$ 5,500.00
C$ 5,680.00
C$ 5,860.00
C$ 6,040.00
C$ 7,000.00
C$ 2,500.00
C$ 2,680.00
C$ 2,680.00
C$ 3,040.00
C$ 3,000.00
C$ 3,250.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,800.00
C$ 4,250.00
C$ 4,430.00
C$ 4,610.00
C$ 4,790.00
C$ 5,000.00
C$ 4,250.00
C$ 4,430.00
C$ 4,610.00
C$ 4,790.00
C$ 5,000.00
C$ 5,500.00
C$ 5,860.00
C$ 5,860.00
C$ 6,040.00
C$ 7,000.00
C$ 2,500.00
C$ 2,680.00
C$ 2,860.00
C$ 3,040.00
C$ 3,000.00
C$ 2,500.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,800.00
C$ 4,250.00
C$ 4,430.00
C$ 4,610.00
C$ 4,790.00
C$ 5,000.00
C$ 5,500.00
C$ 5,680.00
C$ 5,860.00
C$ 6,040.00
C$ 7,000.00
C$ 2,500.00
C$ 2,680.00
C$ 2,680.00
C$ 3,040.00
C$ 3,000.00
Con Dige
Con
Esclava
Con Cadena y
Dige
Anillo en 14
K.T.
105
22
23
24
25
26
27
28
29
30
31
Anillo Trifsico
Mediano
Anillo Trifsico
Grande
Anillo Moderno
Pequeo
Anillo Moderno
Mediano
Anillo Moderno
Grande
Anillo Moderno
Extra grande
Anillo Mary
Anillo
Fascinacin
Anillo
Centenario
Mediano
Anillo Cuadrado
Primera Parte
C$ 3,250.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,800.00
C$ 4,250.00
C$ 4,430.00
C$ 4,610.00
C$ 4,790.00
C$ 5,000.00
C$ 2,500.00
C$ 2,680.00
C$ 2,680.00
C$ 3,040.00
C$ 3,000.00
C$ 3,250.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,800.00
C$ 4,250.00
C$ 4,430.00
C$ 4,610.00
C$ 4,790.00
C$ 5,000.00
C$ 5,500.00
C$ 5,680.00
C$ 5,860.00
C$ 6,040.00
C$ 7,000.00
C$ 2,500.00
C$ 1,500.00
C$ 2,680.00
C$ 1,680.00
C$ 2,680.00
C$ 1,680.00
C$ 3,040.00
C$ 2,040.00
C$ 3,000.00
C$ 1,800.00
C$ 3,250.00
C$ 3,430.00
C$ 3,610.00
C$ 3,790.00
C$ 3,750.00
C$ 2,500.00
C$ 2,680.00
C$ 2,680.00
C$ 3,040.00
C$ 3,000.00
Paso1:
Crear un formulario con los siguientes elementos:
106
Primera Parte
a.- Un Textbox, que permita: Mltiples lneas, que este permita el relleno de forma vertical y que
sea solo para lectura.
b.- Un Botn, al cual se le colocara en su propiedad Text: Cargar Elementos.
c.- Dos etiquetas, la primera en su propiedad Text colocar Progreso, y la segunda Etiqueta
Elementos.
d.- Agregar un Nuevo Elemento, un ProgressBar, solo colquelo entre las etiquetas.
Paso Dos:
Al momento y en el evento de carga del formulario, realice los siguientes ajustes:
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Handles Me.Load
'Inicializar Los valores del Arreglo Nombre_Anillos
Nombre_Anillos(0) = "Anillo Excell"
Nombre_Anillos(1) = "Anillo Ovalado Econmico"
Nombre_Anillos(2) = "Anillo Ovalado Pequeo"
Nombre_Anillos(3) = "Anillo Ovalado Mediano"
Nombre_Anillos(4) = "Anillo Ovalado Grande"
Nombre_Anillos(5) = "Anillo Marquesa B1"
Nombre_Anillos(6) = "Anillo Marquesa B2"
Nombre_Anillos(7) = "Anillo Marquesa B3"
Nombre_Anillos(8) = "Anillo Marquesa B4"""
Nombre_Anillos(9) = "Anillo Josu Pequeo"
Nombre_Anillos(10) = "Anillo Josu Extragrande"
Nombre_Anillos(11) = "Anillo Setonaga Pequeo"
'Inicializar Los valores de la Barra de Progreso en base a los
'elementos del Arreglo Nombre_Anillos
Me.ProgressBar1.Minimum = 0
Me.ProgressBar1.Maximum = UBound(Nombre_Anillos)
End Sub
Paso 3:
Crear un Procedimiento, el cual rellene en el TextBox1 el arreglo Antes inicializado.
Recuerde que este debe ir de preferencia despues del manejo de eventos y antes del final de la
clase Form1.
Sub ImpArreglo_Al_TextBox1(ByVal Nombre_Anillos() As String)
Dim i As Short
'Ahora utilizar las Funciones que se habian explicado
anteriormente, como es LBound y UBound
For i = LBound(Nombre_Anillos) To UBound(Nombre_Anillos)
'Asignarlo al Objeto TextBox1, celda a celda, es
decir, uno a uno.
Ing. Giovanni Senz
107
Primera Parte
108
Primera Parte
109
Primera Parte
2) Analizar el uso de los clases y objetos en Visual Basic de Studio .NET 2005.
3) Definir los pasos que se deben realizar para programar clases y objetos en
Visual Basic .NET 2005.
4) Realizar prcticas en las cuales se pueda ver el uso de los clases y objetos que
faciliten el desarrollo de las aplicaciones en Visual Basic .NET 2005.
3.- Ya dentro de Visual Basic .Net, agregar un nuevo Formulario con el Nombre de
FrmPOO, y en la propiedad text del Formulario digitalizar: Formulario de
Programacin Orienta a Objetos en VB .Net (Ver Grfico #2).
110
Primera Parte
Debe
asegurar
que
el
Proyecto que esta creando
es de Visual Basic .Net,
uestes ya tiene prctica en
este sentido (sino lo hace as,
demuestra
que
estudiando nada).
no
ha
111
Primera Parte
Es muy importante que tenga pendiente, que usted esta creando una Aplicacin, la
cual tiene ciertas especificaciones, no pierda el hilo de la secuencia de pasos.
Continuemos.
112
Primera Parte
Es muy importante, que tenga pendiente nuevamente, Para Crear el Formulario tiene
que ir al men (esta es una de tres opciones que existe en Visual Basic .Net), ah
buscar la opcin Proyecto, a continuacin selecciones Agregar nuevo Elemento,
exactamente como aparece en el siguiente grfico:
Debe seleccionar
Agregar un nuevo
Elemento. Hacer
Click.
113
Primera Parte
114
Primera Parte
4.- Para poder trabajar con objetos y clases, es recomendable que adicionalmente
recuerde como trabajan las funciones y los procedimientos en Visual Basic .Net. Este
cdigo, debe digitalizarlo ntegramente, dentro del formulario, recuerde que me refiero
a las Instrucciones que sern programadas (recuerde el orden que se establecen las
clases, objetos y eventos, si no lo hace as, entonces demuestra que no ha practicado y
nada ha estudiado).
Public Class Form1
Public Class Persona
Private mNombre As String
Private mApp As String
Public Sub New(ByVal n As String, ByVal a As String)
mNombre = n
mApp = a
End Sub
115
Primera Parte
116
Primera Parte
As
System.Object,
ByVal
117
As
Primera Parte
Tareas:
Ahora usted hgalo en base a las orientaciones seguidas en el simulacro examen (es
decir, esos dos programas que quedaron en clase, ahora utilizar esta tcnica), entonces
tiene tres programas (este mismo, ms los otros dos) que hacer para el prximo da de
clase.
118
Primera Parte
Bibliografa
1.- Titulo: Aprenda Ya Visual Basic .Net.
Autor: Michael Halvorson.
Editorial: Mc Graw Hill.
ISBN: 970-10-5897-6
2.- Titulo: Aprenda Practicando Visual Basic 2005 Usando Visual Studio 2005.
Autor: Felipe Ramirez.
Editorial: Prentice Hall.
ISBN: 970-26-0912-7
119