Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Para poder interactuar sobre los distintos formularios utilizaremos los siguientes
métodos:
Form2.Objeto
1.ejercicio
2VBNET 2
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Prueba:
2.ejercicio
2VBNET 3
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
El estándar MDI permite que los programas trabajen con múltiples formularios
contenidos dentro de un formulario primario o principal.
En el formulario form1:
IsMdiCointaner = True.
My.Forms.Form2.MdiParent = Me
ActiveMdiChild.Close()
Me.Close()
2VBNET 4
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
¿Que ocurre cuando tanto el formulario contenedor como el hijo tiene menus?
2VBNET 5
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Ejercicio 3
2VBNET 6
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Ejercicio 4
Un formulario hijo:
2VBNET 7
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
La opción Nuevo permitirá crear un nuevo formulario que será igual al formulario
hijo creado. Solamente a medida que se vaya creando nuevos formularios se
cambiará el título del formulario.
Dim ventanahijo As New Form2 ; definimos una variable de tipo form2 (formulario
hijo)
ventanahijo.MdiParent = Me ; indicamos quien es el formulario padre
ventanahijo.Show() ; decimos que se muestre el nuevo formulario
La opción Cerrar permitirá cerrar el formulario que este activo en ese momento.
Formulario hijo:
Propiedades
Propiedad Descripción
2VBNET 8
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Métodos
Método Descripción
Por ejemplo:
'abrir el diálogo
Me.dlgAbrir.ShowDialog()
Title
InitialDirectory
Filename
2VBNET 9
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Declaración variable
Dim a, b As Integer
Dim c As Integer, d As Integer
En este caso hay que indicar junto a cada variable el tipo de datos que queramos
que tenga.
En este caso, tenemos dos variables de dos tipos distintos, cada una con su As tipo
correspondiente, pero separadas por una coma.
Pero si lo que pretendemos es que el que lea nuestro código se "caliente" el coco
intentando entenderlo... (por decir algo), podemos complicar aún más la cosa:
Hasta ahora hemos definido una variable en una fila y la hemos inicializado.
Dim N As Integer = 15
Dim p, q As Integer = 1
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
En un procedimiento
Dim No guarda el valor
Static Guarda el valor
En una clase o modulo (General Declarations )
Dim o Private Solamente se podrán utilizar en el modulo o clase definido. (Dim
edo Private es lo mismo)
Public Se puede utilizar en todos los módulos o clases que tiene un
proyecto pero se tiene que indicar siempre el modulo donde se ha
declarado la variable.: Form1.variable
Static le indica al compilador que esa variable debe mantener el valor entre
distintas llamadas al procedimiento, para que de esa forma no se pierda el valor
que tuviera.
Las variables declaradas en un modulo, clase se dicen que son variables globales.
Para acceder a una variable global se debe poner el nombre del formulario donde
esta declarada y a continuación el nombre de la variable.
Una forma más cómoda es definir estas variables globales en un modulo aparte, de
forma que para acceder a una variable global solamente será necesario poner el
nombre de la variable.
Ejercicio 5
2VBNET 11
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Analiza como sería el código si utilizamos un imagelist para cargar las imágenes en
el segundo formulario.
Cada programa realizará una función y podrá ser llamado tantas veces como se
quiera y desde donde se quiera en función del ámbito donde está declarada.
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
[sentencias]
[nombre = expresion]
End Function
donde
parámetros son los argumentos que son pasados cuando se llama a la función.
variable = nombre([argumentos])
El número de argumentos debe ser igual al número de parámetros y los tipos de los
argumentos deben coincidir con los tipos de sus correspondientes parámetros.
El siguiente ejemplo corresponde a una función que devuelve como resultado la raíz
cuadrada de un número N:
Option Explicit
2VBNET
Private Sub C_raiz_Click() 1
Text1.Text =
raiz(Text1.Text)
End Sub
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Procedimientos Sub
o bien
La llamada a este procedimiento Sub puede ser de cualquiera de las dos formas
siguientes:
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Por ejemplo,
El argumento Num es pasado por valor. Significa que lo que se pasa es una copia
de Num. Si el procedimiento cambia ese valor, el cambio afecta sólo a la copia y no
a la propia variable Num.
Otra forma de especificar que un argumento será siempre pasado por valor es
anteponiendo la palabra ByVal a la declaración del parámetro en la cabecera del
procedimiento (Sub o Function).
Por ejemplo,
Pasar argumentos por valor evita modificaciones accidentales, pero tiene un coste
en tiempo y memoria que puede ser significativo cuando se pasan grandes
volúmenes de información, como sucede con vectores, matrices y estructuras.
Recordamos
1. forma
PictureBox1.Load("..\..\resources\j0407175.jpg")
End Sub
Call VerdeToolStripMenuItem_Click(sender, e)
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
End Sub
Para realizar la llamada al Nombre del procedimiento
procedimiento
2. forma
PictureBox1.Load("..\..\resources\j0407175.jpg")
End Sub
Ejercicio 6
Ejercicio 7
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Un array permite referirse a una serie de elementos del mismo tipo con un mismo
nombre, y hace referencia un único elemento de la serie utilizando uno o más
índices, como un vector o una matriz.
Todos los elementos de un array deben ser del mismo tipo y están almacenados de
forma contigua en la memoria.
Entre los arrays de variables cabe distinguir dos tipos fundamentales, dependiendo
de que número de elementos sea constante o pueda variar durante la ejecución del
programa.
Arrays estáticos
Ejemplos:
Este ejemplo declara un array de dos dimensiones, llamado matriz, con 4x6
elementos, matriz(0,1), … matriz(3,5), de tipo entero.
La declaración de los arrays estáticos es bastante cómoda. Se declaran una vez. Sin
embargo tienen el inconveniente que en la mayoría de los casos están
sobredimensionados y utilizan más memoria de la que realmente necesitan. Esto
implica que se está malgastando memoria.
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Arrays dinámicos
Esto se hace con la sentencia Public si se quiere que sea global, con Dim o
Private si se quiere a nivel de módulo o con Static, Dim o Private si se quiere
que sea local.
Para asignar el número actual de elementos del array se utiliza la sentencia ReDim.
La sentencia ReDim puede aparecer solamente en un procedimiento y permite
cambiar el número de elementos del array y sus límites inferior y superior, pero no
el número de dimensiones.
Esto quiere decir que, por ejemplo, no se puede trasformar un vector en una
matriz.
Si se declara el array Matriz a nivel del formulario.
Ejemplo
Resultado: 0,1,2,3,4,5,6,7,8,9
ReDim numeros(5)
For i = 0 To Ubound(numeros)
Text1.Text = Text1.Text & “ “ & numeros(i)
Next i
Resultado: 0,0,0,0,0,0
La función Ubound devuelve el valor más alto del índice y la función Lbound el
menor.
Cada vez que se ejecuta la sentencia ReDim, todos los valores almacenados en el
array se pierden.
Cuando interese cambiar el tamaño del array conservando los valores del array,
2VBNET 1
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Resultado: 0,1,2,3,4,5
20.2 Estructuras
Una estructura consiste en un conjunto de datos que se unen para formar un tipo
de dato compuesto. Este elemento nos permite agrupar bajo un único identificador,
una serie de datos relacionados.
Como novedad en VB.NET, los miembros de una estructura pueden ser, además de
los propios campos que almacenan los valores, métodos que ejecuten operaciones,
por lo cual, su aspecto y modo de manejo es muy parecido al de una clase.
Por ejemplo, si disponemos de la información bancaria de una persona, como pueda
ser su código de cuenta, titular, saldo, etc., podemos manejar dichos datos
mediante variables aisladas, o podemos crear una estructura que contenga toda
esa información, simplificando la forma en que accedemos a tales datos.
Para crear una estructura, tenemos que utilizar la palabra clave Structure junto al
nombre de la estructura, situando a continuación los miembros de la estructura, y
finalizándola con la palabra clave End Structure.
El modo de utilizar una estructura desde el código cliente, consiste en declarar una
variable del tipo correspondiente a la estructura, y manipular sus miembros de
forma similar a un objeto. Declaramos una variable de la estructura DatosBanco.
End Sub
Ejercicio 9
2VBNET 2
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
Al pulsar el botón Añadir los datos que se han introducido en los cuadros de
texto se guardaran en un array y el apellido en el combobox Apellidos.
Al pulsar el botón Borrar, los datos que se encuentran tanto en los cuadros de
texto como en el combobox se borraran. Antes de borrar saldrá un mensaje
pidiendo la confirmación.
Al seleccionar un apellido del comboBox los datos correspondientes a ese
apellido aparecerán en los cuadros de texto.
Al pulsar el botón Nuevo los cuadros de texto y el combobox se dejaran en
blanco.
Al pulsar Salir el programa terminará. .
Se deberá utilizar:
• Metodos, propiedades:
o ComboBox1.Items.Add(…)
o ComboBox1.Items.Remove(…)
o ComboBox1.SelectedIndex
• Para guardar el nombre, apellidos se utilizará un array.
• Se definirá un estructura con el nombre amigos_reg
• Se definirá un array de 10 amigos del tipo estructura amigos_reg.
• Recuerda que en todos los arrays el primer elemento empieza por cero.
2VBNET 2
Visual .NET
Microsoft Visual Studio 2005 Unidades Didácticas 17,18, 19, 20
El entorno de .NET Framework proporciona, al igual que ocurre con las clases, una
serie de estructuras del sistema, con funcionalidades diseñadas para ayudar al
programador.
Propiedades
Propiedad Descripción
Métodos
Método Descripción
Ejemplos
2VBNET 2