Ingeniero en Informática
Visual Basic
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
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 byte | 1 Byte sin signo comprende un número entre 0 a 255 |
Char | 2 bytes | Un carácter Unicode o número sin signo comprendido 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 mayor valor posible es de +/- 7,9228162514264337593543950335 mientras que el menor valor posible distinto de cero es +/- ,0000000000000000000000000001 (+/-1E-28). |
Double | 8 bytes | Se almacenan como números IEEE de punto flotante de doble precisión Los valores van desde -1,79769313486231570E+308 a - 4,94065645841246544E-324 para números negativos y de 4,94065645841246544E-324 a 1,79769313486231570E+308 para números positivos. |
Integer | 4 bytes | Valores con signo comprendidos entre -2.147.483.648 y 2.147.483.647. |
Long | 8 bytes | valores con signo comprendidos entre -9.223.372.036.854.775.808 y 9.223.372.036.854.775.807. |
Short | 2 bytes | - 32.768 a 32.768 |
Single | 4 bytes | Se almacenan como números IEEE de punto flotante de precisión simple con valores que van de -3,4028235E+38 a -1,401298E-45 para números negativos y de 1,401298E-45 a 3,4028235E+38 para números positivos. Los números de precisión simple almacenan aproximaciones de números reales. |
String | La longitud de un objeto String puede ir desde cero hasta, aproximadamente, dos mil millones de caracteres. Cada carácter es un valor Unicode de 16 bits. | |
Object | 4 bytes | Al declarar una variable como Object, puede utilizarla posteriormente para hacer referencia a cualquier objeto reconocido por la aplicació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
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 sin declarar 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 char tendrá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
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 las variables. 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 resultado de 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
Acción | Elemento del lenguaje |
Aritméticos | |
Asignación | |
Comparación | |
Concatenación | |
Operadores lógicos/bit a bit | |
Varias operaciones |
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 en Off para que obligue a que los tipos de datos que se usen sean del tipo adecuado. Además de Option Explicit en 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 definirla como
Dim carácter As Char=”A”c
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
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
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
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, observe que si i no fuera mayor que cero al ingresar no realizaría el ciclo
Option Strict On
Module Module1
Sub Main()
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 una vez al ciclo
Option Strict On
Module Module1
Sub Main()
Dim i As Integer = 5
Do
Console.WriteLine(i)
i -= 1
Loop While i > 0
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()
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
'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
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 valores relativos.
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 signo equivalente.
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 es igual en su contenido.
Por ejemplo
Este ejemplo compara dos objetos de tipo integer verificando el contenido.
Hay 3 posibilidades
Si el resultado es =0 indica que el contenido en el objeto es igual que el contenido almacenado en el objeto pasado como parámetro
Si el resultado es >0 indica que el contenido en el objeto es mayor que el contenido almacenado en el objeto pasado como parámetro
Si el resultado es >0 indica que el contenido en el objeto es menor que el contenido almacenado en el objeto pasado 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()
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
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 dato Integer en la plataforma .net framework y ahora se llama Integer para conservar la compatibilidad con las versiones 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
'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
Descargar
Enviado por: | El remitente no desea revelar su nombre |
Idioma: | castellano |
País: | Nicaragua |