Visual Studio VB.NET 5°
Visual Studio VB.NET 5°
Formularios y Controles
Cada uno de los elementos gráficos que pueden formar parte de una aplicación
típica de Windows es un tipo de control: los botones, las cajas de diálogo y de texto, las
cajas de selección desplegables, los botones de opción y de selección, las barras de
desplazamiento horizontales y verticales, los gráficos, los menús, y muchos otros tipos
de elementos son controles para Visual Basic. Cada control debe tener un nombre a
través del cual se puede hacer referencia a él en el código del programa. VB proporciona
nombres por defecto que el usuario puede modificar.
Se llama formulario (form) a una ventana. Un formulario puede ser considerado
como una especie de contenedor para los controles. Una aplicación puede tener varios
formularios, pero un único formulario puede ser suficiente para las aplicaciones más
sencillas. Los formularios deben también tener un nombre, que puede crearse siguiendo
las mismas reglas que para los controles.
Objetos y Propiedades
Los formularios y los distintos tipos de controles son entidades genéricas de las
que puede haber varios ejemplares concretos en cada programa. En programación
orientada a objetos, más bien en este caso basada en objetos, se llama clase a estas
entidades genéricas, mientras que se llama objeto a cada ejemplar de una clase
determinada. Por ejemplo, en un programa puede haber varios botones, cada uno de los
cuales es un objeto del tipo de control button, que sería la clase.
Cada formulario y cada tipo de control tienen un conjunto de propiedades que
definen su aspecto gráfico (tamaño, color, posición en la ventana, tipo y tamaño de letra,
etc.) y su forma de responder a las acciones del usuario (si está activo o no, por
ejemplo). Cada propiedad tiene un nombre que viene ya definido por el lenguaje.
Por lo general, las propiedades de un objeto son datos que tienen valores lógicos
(True, False) o numéricos concretos, propios de ese objeto y distintos de las de otros
objetos de su clase. Así pues, cada clase, tipo de objeto o control tiene su conjunto de
propiedades, y cada objeto o control concreto tiene unos valores determinados para las
propiedades de su clase.
Casi todas las propiedades de los objetos pueden establecerse en tiempo de diseño
y también -casi siempre- en tiempo de ejecución. En este segundo caso se accede a sus
valores por medio de las sentencias del programa, en forma análoga a como se accede a
cualquier variable en un lenguaje de programación. Para ciertas propiedades ésta es la
única forma de acceder a ellas. Por supuesto VB permite crear distintos tipos de
variables.
Se puede acceder a una propiedad de un objeto por medio del nombre del objeto
a que pertenece, seguido de un punto y el nombre de la propiedad, como por ejemplo
optColor.objName.
Eventos
Las acciones del usuario sobre el programa se llaman eventos. Son eventos típicos
el hacer clic sobre un botón, el hacer doble clic sobre el nombre de un fichero para
abrirlo, el arrastrar un icono, el pulsar una tecla o combinación de teclas, el elegir una
opción de un menú, el escribir en una caja de texto, o simplemente mover el mouse.
Cada vez que se produce un evento sobre un determinado tipo de control, VB
arranca una determinada función o procedimiento que realiza la acción programada por
el usuario para ese evento concreto. Estos procedimientos se llaman con un nombre que
se forma a partir del nombre del objeto y el nombre del evento, separados por el carácter
(_), como por ejemplo txtBox_click, que es el nombre del procedimiento que se ocupará
de responder al evento click en el objeto txtBox.
Métodos
Los métodos son funciones que también son llamadas desde programa, pero a
diferencia de los procedimientos no son programadas por el usuario, sino que vienen ya
pre-programadas con el lenguaje. Los métodos realizan tareas típicas, previsibles y
comunes para todas las aplicaciones. De ahí que vengan con el lenguaje y que se libere
al usuario de la tarea de programarlos. Cada tipo de objeto o de control tiene sus propios
métodos.
Por ejemplo, los controles gráficos tienen un método llamado DrawLine que se
encarga de dibujar líneas rectas.
Actividades
Actividad N° 1
Estructuras:
Selección de casos:
Select Case variable
Case 3 To 5: Acciones primitivas para 3, 4 y 5
Case 6 To 8: Acciones primitivas para 6, 7 y 8
Case 9: Acciones primitivas para 9
Case Else: Acciones primitivas para el resto
End Select
PARA-HACER:
For variable = valor_inicial to valor_final step paso
Acciones primitivas
Next
MIENTRAS
DO While (condición) DO until (condición)
Acciones primitivas Acciones primitivas
loop loop
REPETIR
DO DO
Acciones primitivas Acciones primitivas
loop While (condición) loop until (condición)
Actividad N° 2
'Proceso y salida
Actividad N° 3
Realizar la siguiente ventana con dos botones, uno que permita salir, y otro que
devolverá los siguientes resultados.
El nombre que se podrá ingresar en el InputBox declararlo primero como tipo de
dato: Texto con cualquier carácter.
Actividad N° 4
Realizar un botón para calcular el área de un triángulo (base*altura/2). Y otro
botón para salir.
Actividad N° 5
Realizar un botón para saludar al usuario la cantidad de veces que él lo desee.
Actividad N° 6
Realizar la siguiente pantalla.
Al escribir la clave solo se podrá ver *:
Función Lcase y Ucase: Lcase cambia o convierte una cadena de texto a minúscula.
Y Ucase a mayúsculas.
Ej: UCase(txtNombre.Text)
Lcase (variable)
Actividad N° 7
Crear la siguiente pantalla:
El nombre y contraseña que se podrá ingresar en el InputBox declararlo primero
como tipo de dato: Texto con cualquier carácter.
Al presionar Acceso:
y al tocar Aceptar vuelve a la primera pantalla en la cual aparece un imagen que estaba
oculta:
Actividad N° 8
De una lista de 15 chicos con edad escolar determinar qué cantidad hay en cada
nivel educativo. De 3 a 5 jardín, de 6 a 11 primario, de 12 a 18 secundaria.
Actividad N° 9
Crear la siguiente pantalla:
Actividad N° 10
Dada una lista de 10 números hallar la suma y el promedio de aquellos que
tengan solamente 2 dígitos.
Actividad N° 11
Se desea calcular el total de una cuenta de un cliente que invierte su dinero en un
plazo fijo, sabiendo que si es a 30 días le dará un 7%, si es a 60 días un 16% y a 90 días
un 18% más, si se ingresa otra cantidad de días imprimir error. Imprimir el apellido del
cliente junto con el saldo final que obtendrá al cerrar el plazo fijo.
Actividad N° 12
Crear un programa que permita obtener el sueldo de un empleado según los años
de antigüedad. Se deberá poder ingresar el nombre, apellido, sueldo básico y antigüedad
del empleado, luego dependiendo de la antigüedad se le sumara al sueldo básico un
porcentaje de dicho sueldo: Si la antigüedad es mayor o igual a 3 años y menor a 6
tendrá un 15% de aumento, si la antigüedad es mayor o igual a 6 y menor a 10 tendrá un
30%, si la antigüedad es mayor o igual a 10 tendrá un 50%. Imprimir el nombre,
apellido y sueldo total de cada empleado.
Actividad N° 13
Realizar las siguientes 3 pantallas:
Y
al presionar en cada
bandera sale el nombre.
Las caritas
no se ven.
ATENCIÓN: Tener en cuenta que el usuario puede elegir las banderas en el orden
deseado, y puede ingresar los nombres tanto en mayúsculas como minúsculas.
Los procedimientos y funciones son porciones de código que realizan una determinada
tarea. Tienen un ámbito que cumple con las mismas reglas que las variables.
Los procedimientos comienzan con Private Sub o Public Sub, según se establezcan
como privados o públicos, y finalizan con End Sub.
Actividad N° 14
Realizar las siguientes 2 pantallas:
textbox
label
Actividad N° 15
Realizar la siguiente pantalla:
Text:
&Corregir
(para usar con
alt+C)
Números aleatorios
La función Rnd devuelve un valor menor que 1, pero mayor o igual que cero. El
valor de Number determina cómo Rnd genera un número aleatorio.
Para cualquier inicialización inicial determinada, se genera la misma secuencia de
números porque cada llamada sucesiva a la Rnd función usa el número generado
previamente como valor de inicialización para el siguiente número de la secuencia.
Antes de llamar a Rnd, se usa Randomize instrucción sin un argumento para
inicializar el generador de números aleatorios con un valor de inicialización basado en
el temporizador del sistema.
Actividad N° 16
Realizar la siguiente pantalla:
Actividad N° 17
Realizar la siguiente pantalla:
Actividad N° 18
Realizar la siguiente pantalla:
ListBox
Actividad N° 19
Realizar la siguiente pantalla:
Agrega el resultado de
multiplicar la “Cantidad” por
el “Precio Unitario” de cada
artículo.
For a = 0 To Listbox4.items.count - 1
Listbox4.selectedIndex = a
Label11.text = val(Label11.text) + val(Listbox4.Text)
Next a
Actividad N° 20
Realizar la siguiente pantalla:
GroupBox
CheckBox
RadioButton
Actividad N° 21
Realizar la siguiente pantalla:
Actividad N° 22
Actividad N° 23
Realizar la siguiente pantalla:
s = CSng(txt1erNum.Text) - CSng(txt2doNum.Text)
Validar que el usuario ingrese números para poder realizar las cuentas:
Actividad N° 24
Realizar la siguiente pantalla:
Propiedades ComboBox:
DropDownStyle: DropDownList
Items: (colección: 1,2,3,4,5,6,7,8,9,10)
Promedio= (Val(ComboBox1.Text)+Val(ComboBox2.Text)+Val(ComboBox3.Text))/3
Actividad N° 25
Realizar la siguiente pantalla:
edad = Val(txtEdad.Text)
If edad >= 18 Then
grbEquipos.Enabled = True
Else
grbEquipos.Enabled = False
End If
Actividad N° 26
Realizar la siguiente pantalla:
Arrays (Arreglos)
En programación es una zona de almacenamiento continuo, que contiene una
serie de elementos del mismo tipo.
Es decir, es una manera de poder guardar datos del mismo tipo o clase (Enteros,
carácteres, booleanos, etc.).
Es posible el acceso a cada elemento de un array a través de un número entero que
se denomina índice (pueden existir 2 o más índices según la dimensionalidad del array).
La numeración de estos elementos dentro del array comienza en 0 (primer
elemento del array).
Ejemplo:
Arrays multidimensionales
También se pueden crear arrays de más de 2 dimensiones. Llamado “n” dimensiones o
matriz multidimensional. En este caso el número de índices viene determinado por el
número de dimensiones de nuestro array, por ejemplo, para un array tridimensional el
número de índices sería 3.
Su uso y su declaración es la misma que la usamos cuando vamos a definir una matriz, a
diferencia que utilizaremos más de dos índices a la hora de recorrerlo.
Un arreglo en VB.NET puede llegar a tener 32 dimensiones.
Actividad N° 27:
Escribir un programa que lea 10 números ingresados por el usuario (que
corresponden a los elementos de un vector), y nos informe cual fue el número
mayor, y cuál fue el número menor.
Actividad N° 28:
Escribir un programa en el que se puedan ingresar una cantidad de números
deseados (limitarlo a 20 por ejemplo) y luego los imprima en un ListView, calcule y
muestre el promedio de los mismos y también imprima los números leídos que sean
mayores que la media calculada.
-ListView: Propiedades: View: List (para ver en formato de lista, uno abajo del otro)
For Indice = 0 To 19
n = InputBox("Ingrese un Número. N° " & Indice + 1, "Ingresar")
Vector(Indice) = n
acu = acu + n
ListView1.Items.Add(Vector(Indice))
Next
Label1.Text = acu / 20
For Indice = 0 To 19
If Vector(Indice) > Val(Label1.Text) Then
ListView2.Items.Add(Vector(Indice))
End If
Next
End Sub
Actividad N° 29:
Implementar un programa que permita gestionar los gastos de los “n” días de
una persona, los gastos se deben ingresar con un inputBox, al final se deberá
mostrar el total de gastos y que día se hizo el mayor gasto.
V 0
Día 01 100
Día 02 85
Día 03 19
Día 04 110
Día 05 106
Día 06 108
Día 07 95
El día
En lugar de:
Dim vGastos(7) As Double
Dim gasto As Double
Dim i As Integer
For i = 0 To 6 Step 1
gasto = InputBox("ingrese el gasto del dia" & (i + 1), "Gastos")
vGastos(i) = gasto
Next
cantDias = Val(txtCantDias.Text)
ReDim Preserve vGastos(cantDias)
Actividad N° 30:
Implementar un programa para registrar los datos de venta de un restaurante, se
debe almacenar en una matriz el nombre del plato, su precio, y la cantidad
disponible.
tateti
Timer
El control Timer (temporizador) te permite gestionar eventos recurrentes de tu
aplicación en tiempo de ejecución. Este control tiene algunas propiedades y métodos
específicos. Su propiedad más importante es "Interval" (intervalo), que especifica con
qué frecuencia debe ejecutar su código. Es necesario especificar un valor para Interval
en milisegundos; 1.000 milisegundos equivalen a un segundo. Algunas de las cosas que
puedes hacer con el control Timer son llevar a cabo un conteo regresivo, cambiar
dinámicamente los valores de las propiedades de otros controles y mantener un control
constante de alguna otra parte de la aplicación.
Actividad N° 34:
Realizar una aplicación que permita mostrar la fecha y hora actualizada en tiempo real y
que, además, permita crear una animación simple entre dos etiquetas de texto que
cambie cada 5 segundos del texto “HOLA” por “CHAU”.
-Propiedades de TIMER 1:
Enabled: true
Interval:1000
-Propiedades de TIMER 2:
Enabled: false
Interval: 5000
Actividad N° 35:
Realizar un juego en el cual al presionar un botón de iniciar cambiará entre 3 opciones
“ganó $1000”, “ganó $2000” y “no gano”, al presionar un botón de “Parar” nos dirá en
que texto se detuvo.