00056900

18
MANUALILLO DE VISUAL BASIC.NET Este manualillo sólo pretende ser una mera introducción a lo que es vb.net, y es poca la información encontrada hasta ahora del lenguaje, no espero cubrir todo sino medianamente informar de a cuerdo a lo que he leído de diversas fuentes. Estoy aprendiendo también y creo que realizando este trabajito se aprenden muchas cosas. Cualquier error por favor me disculpan no pretendo ser un duro en esto sino como dije antes es una forma de aprender y que otros aprendan. Tampoco se explica lo que es la plataforma .Net FrameWork, como introducción sino que a medida que se avance el usuario se dará cuenta de que es y como se usa. Al final de cada capítulo se realizan ejemplos para que puedan usarlos de prueba, claro esta que estos ejemplos son en modo consola, posteriormente se introducirán en el entorno visual. Este manual no es exactamente para un novato, debe tener ideas de programación, al menos haber programado en algún lenguaje. Cuando se finalice el capítulo 7 se cambiará todo a páginas html. En el primer capitulo se estudia los tipos de datos soportados por vb.net. El capítulo 2 se estudia los operadores El capítulo 3 se estudia las instrucciones básicas que comprenden las condiciones, los ciclos etc. Aquí se realizará un estudio de los tipos de datos como objetos de clase, donde se les mostrará los métodos intrínsecos que poseen. El capítulo 4 se estudia las funciones y procedimientos El capítulo 5 se estudia las arreglos y las matrices El capítulo 6 se estudia las excepciones El capítulo 7 Archivos El capitulo 8 El entorno visual de Microsoft visual basic.net, aquí en este capítulo se verán ejemplos con algunos controles básicos como son las etiquetas, los cuadros de texto, iteración con la forma, botones, listas, combos y algunos otros. El capitulo 9 se estudiarán los menús, las barras de herramientas, de estado, cuadros de diálogos comunes. El capitulo 10 se verán las clases 1. Tipos de datos Los tipos de datos soportados por vb.net son Boolean 1

Upload: gregory

Post on 15-Jan-2016

2 views

Category:

Documents


0 download

DESCRIPTION

requiere informacion

TRANSCRIPT

Page 1: 00056900

MANUALILLO DE VISUAL BASIC.NET

Este manualillo sólo pretende ser una mera introducción a lo que es vb.net, y es poca la informaciónencontrada hasta ahora del lenguaje, no espero cubrir todo sino medianamente informar de a cuerdo a lo quehe leído de diversas fuentes. Estoy aprendiendo también y creo que realizando este trabajito se aprendenmuchas cosas. Cualquier error por favor me disculpan no pretendo ser un duro en esto sino como dije antes esuna forma de aprender y que otros aprendan.

Tampoco se explica lo que es la plataforma .Net FrameWork, como introducción sino que a medida que seavance el usuario se dará cuenta de que es y como se usa.

Al final de cada capítulo se realizan ejemplos para que puedan usarlos de prueba, claro esta que estosejemplos son en modo consola, posteriormente se introducirán en el entorno visual.

Este manual no es exactamente para un novato, debe tener ideas de programación, al menos haber programadoen algún lenguaje.

Cuando se finalice el capítulo 7 se cambiará todo a páginas html.

En el primer capitulo se estudia los tipos de datos soportados por vb.net.

El capítulo 2 se estudia los operadores

El capítulo 3 se estudia las instrucciones básicas que comprenden las condiciones, los ciclos etc.

Aquí se realizará un estudio de los tipos de datos como objetos de clase, donde se les mostrará los métodosintrínsecos que poseen.

El capítulo 4 se estudia las funciones y procedimientos

El capítulo 5 se estudia las arreglos y las matrices

El capítulo 6 se estudia las excepciones

El capítulo 7 Archivos

El capitulo 8 El entorno visual de Microsoft visual basic.net, aquí en este capítulo se verán ejemplos conalgunos controles básicos como son las etiquetas, los cuadros de texto, iteración con la forma, botones, listas,combos y algunos otros.

El capitulo 9 se estudiarán los menús, las barras de herramientas, de estado, cuadros de diálogos comunes.

El capitulo 10 se verán las clases

1. Tipos de datos

Los tipos de datos soportados por vb.net son

Boolean

1

Page 2: 00056900

Byte

Char

Date

Decimal

Double

Integer

Long

Short

Single

String

Object

Ahora se muestra una tabla para indicar los valores que pueden almacenar

Dato Cantidad de memoria Capacidad

Boolean 2 bytes True o False

Byte 1 byte1 Byte sin signo comprende un número entre 0a 255

Char 2 bytesUn carácter Unicode o número sin signocomprendido con un rango de 0 y 65535

Date 8 bytes

fechas comprendidas entre

el 1 de enero del año 1

y el 31 de diciembre de

9999, y horas desde las

0:00:00 (medianoche) a las 1:59:59.

Decimal 16 bytes

El mayor valor posibles es de+/−79.228.162.514.264.337.593.543.950.335.Para números con 28 decimales, el mayorvalor posible es de +/−7,9228162514264337593543950335 mientrasque el menor valor posible distinto de cero es+/− ,0000000000000000000000000001(+/−1E−28).

Double 8 bytes Se almacenan como números IEEE de puntoflotante de doble precisión Los valores vandesde −1,79769313486231570E+308 a −

2

Page 3: 00056900

4,94065645841246544E−324 para númerosnegativos y de 4,94065645841246544E−324 a1,79769313486231570E+308 para númerospositivos.

Integer 4 bytesValores con signo comprendidos entre−2.147.483.648 y 2.147.483.647.

Long 8 bytesvalores con signo comprendidos entre−9.223.372.036.854.775.808 y9.223.372.036.854.775.807.

Short 2 bytes − 32.768 a 32.768

Single 4 bytes

Se almacenan como números IEEE de puntoflotante de precisión simple con valores quevan de −3,4028235E+38 a −1,401298E−45para números negativos y de 1,401298E−45 a3,4028235E+38 para números positivos. Losnúmeros de precisión simple almacenanaproximaciones de números reales.

String

La longitud de un objeto String puede ir desdecero hasta, aproximadamente, dos milmillones de caracteres. Cada carácter es unvalor Unicode de 16 bits.

Object 4 bytes

Al declarar una variable como Object, puedeutilizarla posteriormente para hacer referenciaa cualquier objeto reconocido por laaplicación.

Para asignar a una variable un valor se procede de la siguiente manera

se declara la variable y• luego se asigna con el operador =. Se presentan 2 opciones•

a. Dim va As Integer

va=5

Dim va As Integer=5•

Y las constantes se declaran como

Const n as Integer=10 `En esta línea no usamos Dim porque es constante precisamente.

También se pueden declarar varias variables en una misma línea por ejemplo:

Dim a,b,c As Short

En la línea anterior a, b y c serán de tipo Short

Lo anterior se pudo haber escrito como:

Dim a As Short

3

Page 4: 00056900

Dim b As Short

Dim c As Short

O bien

Dim a As Short,b As Short,c As Short

No es recomendable dejar una variable sin indicar el tipo por ejemplo:

Dim i

Esto generaría un error después de declarar la Option Strict en On, porque indicaría que no se debe dejar sindeclarar el tipo.

Algo que no se puede hacer es lo siguiente:

Dim i,b As short=5

Porque generaría un error indicando que no se puede inicializar varias variables al tiempo.

Lo cual se haría de la siguiente manera

Dim As Short,b As short=5

Aunque solo b tendrá un valor de 5

Igualmente

Dim a As Short,b,c As integer,d As Short=3

Sólo d tendrá un valor de 3

Todas las variables numéricas al no inicializarlas tendrán como valor inicial 0, las variables de tipo chartendrán un null o vacía.

Ejemplos 1

Module Module1

Sub Main()

Dim A As Short = 2, B As Short

B = 4

Console.Write("A={0},B={1}", A, B)

Console.Read()

End Sub

4

Page 5: 00056900

End Module

Esto da como resultado

A=2,B=4

2. Operadores

Los operadores se utilizan para realizar operaciones aritméticas con los datos contenidos dentro de lasvariables. Estos son:

* / \

+−

*= /= += −= y otros que están mostrados en una tabla más adelante

Los paréntesis indican cómo se necesita ejecutar una operación aritmética. Por ejemplo observe el resultadode las dos operaciones siguientes.

Dim i As Short=5

Dim j As Short=10

1 i* j+5

2 i* (j+5)

La línea 1 da como resultado 55

La línea 2 da cómo resultado 75

Los operadores += y −= se utilizan para sumar o restar la unidad a una variable por ejemplo

Dim i As Short

i+=1

i−=1

sin embargos se pueden usar de la manera normal o sea

i=i+1

ó

i=i−1

Los otros operadores se usan de igual forma

El siguiente cuadro resume los operadores de vb.net

5

Page 6: 00056900

Acción Elemento del lenguaje

Aritméticos ^, −, *, /, \, Mod, +, =

Asignación =, ^=, *=, /=, \=, +=, −=¸ &=

Comparación =, <>, <, >, <=, >=, Like, Is

Concatenación &, +

Operadores lógicos/bit a bit Not, And, Or, Xor, AndAlso, OrElse

Varias operaciones AddressOf, GetType

Por ejemplo si usamos una variable string

Dim var1 As String = "10"

Dim var2 As String = "3"

var1 += var2 ' El valor de var1 ahora es "103".

Sería una buena practica de programación si se activa la opción Option Strict o sea que esté en On y no enOff para que obligue a que los tipos de datos que se usen sean del tipo adecuado. Además de Option Expliciten On para que todas las variables sean declaradas

Cuando está activa esta opción no se puede realizar la siguiente asignación

Dim carácter As Char=A

Porque generaría un error indicando que no se puede convertir un tipo string a char lo mejor sería definirlacomo

Dim carácter As Char=Ac

Ejemplo 2

Option Strict On

Module Module1

Sub Main()

Dim A As Char = "E"c, B As Char = "A"c

Dim union As String

union &= A

union &= B

Console.Write("union={0}", union)

Console.Read()

End Sub

6

Page 7: 00056900

End Module

Esto da como resultado

Union=EA

Instrucciones básicas•

Las instrucciones básicas de todo lenguaje comprende las condiciones y los ciclos.

Entre ellas veremos:

If

Esta se usa para preguntar por ejemplo

Dim i As Short=5

If i > 0 then

`Haga cualquier cosa

End if

Como también se puede evaluar la parte negativa

If i > 0 then

`Haga cualquier cosa

else

`Tambien haga cualquier cosa

End if

Cómo también se puede evaluar varias alternativas cómo

If i =1 0 then

`Muestre el valor

elseif i=2 then

`Muestre el valor

else

`Tambien haga cualquier otra cosa

End if

7

Page 8: 00056900

También podemos usar la funcion IIF, que funciona de la siguiente forma

iif(i=1,uno,otro) o iif(i>0,Positivo,Negativo), si tuviéramos el siguiente caso

if B=5 then

A=1

Elseif B<=0 then

A=−1

Elseif B>5 then

A=1

Else

A=0

End if

Lo llevaríamos a la función iif de la siguiente forma

A=iif(B=5,1,iif(B<=0,−1,iif(B>5,1,0)))

Sin embargo tenemos otra opción, la función Switch

A=Switch(B=5,1,B<=0,−1,B>5,1)

Como observará el primer elemento de cada pareja es la expresión a evaluar.

También se puede anidar las instrucciones if

Por ejemplo

If A>0 then

If (A mod 2 )=0 then

`Número par

Else

`Número impar

End if

Else

`Nùmero negativo

8

Page 9: 00056900

End if

Select case

Esta instrucción permite evaluar múltiples valores por ejemplo:

Dim B As Short =30

Select case B

Case 5

`Si fuera igual a 5

Caso Is < 10

`Si fuera menor a 10

Case Is> 20

`Si fuera mayor a 20

Case 23 to 25

`Si fuera mayor o igual a 23 y menor e igual a 25

Case 1 to 2

`Si fuera 1 o 2

Case 26 to 28,31

`Si fuera mayor o igual a 26 y menor e igual a 28 o si es 31

Case else

`Si no es ninguna de las anteriores

End select

Do While

Este ciclo es mejor mostrarlo un ejemplo supongo que con eso es suficiente

Se ciclo se realiza mientras la condición sea verdadera o para este caso mientras i sea mayor que 0, observeque si i no fuera mayor que cero al ingresar no realizaría el ciclo

Option Strict On

Module Module1

Sub Main()

9

Page 10: 00056900

Dim i As Integer = 5

Do While i > 0

Console.WriteLine(i)

i −= 1

Loop

Console.Read()

End Sub

End Module

Debe generar como resultado

5

4

3

2

1

Do

Loop While

Igual que anterior es mejor mostrarlo con un ejemplo

Este ciclo se realiza mientras i sea mayor que 0, observe que si i fuera menor que cero al menos ingresaría unavez al ciclo

Option Strict On

Module Module1

Sub Main()

Dim i As Integer = 5

Do

Console.WriteLine(i)

i −= 1

Loop While i > 0

10

Page 11: 00056900

Console.Read()

End Sub

End Module

Debe generar como resultado

5

4

3

2

1

El ciclo for se analizará cuando veamos arreglos

Ejemplo 3

Option Strict On

Module Module1

Sub Main()

Dim B As Short = 6, A As Short

If B = 5 Then

A = 1

ElseIf B <= 0 Then

A = −1

ElseIf B > 5 Then

A = 1

Else

A = 0

End If

Console.Write("A={0}", A)

Console.Read()

11

Page 12: 00056900

End Sub

End Module

Esto da como resultado

A=1

Ejemplo 4

Option Strict On

Module Module1

Sub Main()

Dim B As Short = 30

Select Case B

Case 5

'Si fuera igual a 5

Console.Write("B={0}", B)

Case Is < 10

'Si fuera menor a 10

Console.Write("B={0}", B)

Case Is > 20

'Si fuera mayor a 20

Console.Write("B={0}", B)

Case 23 To 25

'Si fuera mayor o igual a 23 y menor e igual a 25

Console.Write("B={0}", B)

Case 1 To 2

'Si fuera 1 o 2

Console.Write("B={0}", B)

Case 26 To 28, 31

12

Page 13: 00056900

'Si fuera mayor o igual a 26 y menor e igual a 28 o si es 31

Console.Write("B={0}", B)

Case Else

'Si no es ninguna de las anteriores

Console.Write("ninguna de las anteriores")

End Select

Console.Read()

End Sub

End Module

Esto da como resultado

B=30

Ejemplo 5

Option Strict On

Module Module1

Sub Main()

Dim i As Integer

Dim j As Integer

Dim c As Char

i = Console.Read()'aqui lee un carácter

c = Microsoft.VisualBasic.Chr(i)'Lo convierte a carácter

j = Microsoft.VisualBasic.Val(c)'Lo convierte a integer

j += 5

Console.WriteLine("j: {0}", j)'Muestra el resultado

Console.ReadLine()

End Sub

End Module

13

Page 14: 00056900

Si le digitamos 5 para el valor de i

Esto da como resultado

J:10

Observe que en este ejemplo se usan las funciones de la versión anterior de visual basic.net

TIPOS DE DATOS COMO OBJETOS DE CLASE

Antes de introducirnos en este tema se debe aclara que es una clase y objeto

Clase: Son tipos de datos a partir de los cuales podemos crear objetos, estos pueden contener miembros,métodos, propiedades etc.

Objeto: Es una instancia de una clase

Los tipos de datos en visual basic.net son objetos de clase, cada vez que se crea un objeto bien sea short,integer o cualquier otro se crea un objeto de clase short, integer o cualquier otro tipo de datos.

Las clases numéricas

En esta sección veremos las siguientes clases

La clase Integer

Esta clase almacena un datos de tipo entero. Alguno de sus métodos son:

CompareTo Compara esta instancia con un objeto especificado y devuelve una indicación de los valoresrelativos.

Equals Devuelve un valor que indica si la instancia equivale a un objeto especificado.

GetHashCode Devuelve el código hash de esta instancia.

GetType Obtiene el tipo de objeto de la instancia actual

Parse Convierte la representación en forma de cadena de un número en el entero de 32 bits con signoequivalente.

ToString Convierte el valor numérico de esta instancia en la representación de cadena equivalente.

Ahora se realizarán ejemplos para mostrar cada uno de los métodos anteriores

CompareTo Este método lo que hace es una comparación con otro objeto o consigo mismo verificando si esigual en su contenido.

Por ejemplo

Este ejemplo compara dos objetos de tipo integer verificando el contenido.

Hay 3 posibilidades

14

Page 15: 00056900

Si el resultado es =0 indica que el contenido en el objeto es igual que el contenido almacenado en el objetopasado como parámetro

Si el resultado es >0 indica que el contenido en el objeto es mayor que el contenido almacenado en el objetopasado como parámetro

Si el resultado es >0 indica que el contenido en el objeto es menor que el contenido almacenado en el objetopasado como parámetro

Module Module1

Sub Main()

Dim i As Integer = 5

Dim j As Integer = 4

Dim r As Integer

r = i.CompareTo(j)

If r > 0 Then

Console.Write("i={0} es mayor que j={1}", i, j)

ElseIf r < 0 Then

Console.Write("j={0} es menor que i={1}", j, i)

Else

Console.Write("i={0} es igual a j={1}", i, j)

End If

Console.Read()

End Sub

End Module

Dará como resultado

i=5 es mayor que j=4

Equals compara dos objetos del mismo tipo retorno true o false

Por ejemplo

Module Module1

Sub Main()

15

Page 16: 00056900

Dim i As Integer = 5

Dim j As Integer = 4

Dim r As Boolean

r = i.Equals(j)

If r = True Then

Console.Write("i={0} es igual a j={1}", i, j)

Else

Console.Write("i={0} es diferente de j={1}", i, j)

End If

Console.Read()

End Sub

End Module

Dará como resultado

I=5 es diferente de j=4

Si j tuviera 5 el resultado sería

I=5 es igual a j=4

GetHashCode Devuelve el codigo hash de esta instancia (Realmente no sé la utilidad)

Ejemplo

Module Module1

Sub Main()

Dim i As Integer = 5

Console.Write("Código hash para i:{0}={1}", i, i.GetHashCode())

Console.Read()

End Sub

End Module

Dará como resultado

16

Page 17: 00056900

i:5=5

GetType indica el tipo de objeto

Ejemplo

Module Module1

Sub Main()

Dim i As Integer = 5

Console.Write("i es un Tipo de dato {0}", i.GetType())

Console.Read()

End Sub

End Module

Dará como resultado

i es un Tipo de dato System.Int32

Se preguntarán porque System.Int32 lo que pasa es que ése es el verdadero nombre que tiene el tipo de datoInteger en la plataforma .net framework y ahora se llama Integer para conservar la compatibilidad con lasversiones anteriores, es simplemente lo vb.net muestra pero realmente hace uso de la anterior.

Parse convierte una cadena que representa un número Integer a un número Integer

Ejemplo

Module Module1

Sub Main()

Dim i As Integer

Dim valor As String

valor = 31000

'Primera opción

i = Integer.Parse(valor)

'Segunda opción

' se coloca en comentario

'si quiere coloca en comentario la línea de

17

Page 18: 00056900

'la primera opción y quita el comentarió de l

'la segunda

'i = i.Parse(valor)

Console.Write("i={0}", i)

Console.Read()

End Sub

End Module

ToString Este método convierte a cadena el número especificado

Ejemplo

Module Module1

Sub Main()

Dim i As Integer = 31550

Dim valor As String

valor = i.ToString()

Console.Write("valor={0}", valor)

Console.Read()

End Sub

End Module

18