Formación en Valor: Sentido de Pertenencia.
Núcleo Integrador: Programas con el condicional SELECT CASE.
Objetivo: Evaluar el desarrollo de programas con SELECT CASE.
SELECT CASE: Nos permite evaluar los diferentes valores que pueda recibir una variable u objeto(Cuadros de textos, Label, etc)
La instrucción SELECT CASE, finaliza en END SELECT.
Un SELECT CASE, puede tener diferentes CASE, cada uno de ellos evalúa uno o varios valores.
Un SELECT CASE, puede tener un solo CASE ELSE, el cual solo es verdadero si las condiciones anteriores son falsas, por lo cual debe ser la ultima condición en preguntarse (Es opcional).
EJEMPLO:
Desarrolle un programa que capture la edad y nos diga si es bebe, niño, adolescente o adulto.
Tenga en cuenta:
Un bebe es de 0 a 3 años.
Un niño es de 4 a 12 años.
Un adolescente es de 13 a 17 años.
Y un adulto es mayor de 17 años.
Diseñe el siguiente formulario:
Al dar clic en el botón ACEPTAR, se debe mostrar un mensaje de acuerdo con la edad capturada.
Private Sub Command1_Click()
Select Case Val(Text1)
Case 0 To 3
MsgBox "ES UN BEBE"
Case 4 To 12
MsgBox "ES UN NIÑO"
Case 13 To 17
MsgBox "ES UN ADOLESCENTE"
Case Else
MsgBox "ES UN ADULTO"
End Select
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Command1.SetFocus
End If
End Sub
NOTA:
* La instrucción VAL, convierte a valor, en este caso el contenido de TEXT1
* KEYASCII, Captura el código de la ultima tecla pulsada, en este caso, pregunta si la ultima tecla pulsada fue ENTER (El código 13 es el del ENTER).
EJEMPLO2
DISEÑE EL SIGUIENTE FORMULARIO
Se captura el nombre del vendedor y se pasa el cursor a Valor Ventas, despues de capturar el Valor Ventas se pasa el cursor a Aceptar.
Tenga en cuenta, para calcular la comisión:
Las ventas entre 1 y 2000.000 tienen 10% del valor venta
Las Ventas de 2.000.001 hasta 5.000.000 tienen 20% del Valor Venta
Las Ventas superiores a 5.000.000, tienen 30% del Valor Ventas.
Copie el siguiente código:
Private Sub Command1_Click()
Select Case Val(Text2)
Case 1 To 2000000
Text3 = Val(Text2) * 10 / 100
Case 2000001 To 5000000
Text3 = Val(Text2) * 20 / 100
Case Else
Text3 = Val(Text2) * 30 / 100
End Select
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
End If
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Command1.SetFocus
End If
End Sub


No hay comentarios:
Publicar un comentario