Aplicaciones con Do CaSe Visualfox

Necesito ejemplos de unos programas con do case pero no se que hacer y me cuesta un poco porque es en formulario de visual fox con ese porque que io sepa es solo para hacer Menús.

1 Respuesta

Respuesta
2
¿Estás seguro que es con "DO CASE"? El "DO CASE" es una instrucción para realizar cierta acción dependiendo del resultado de una expresión, es un condicinal y es una instrucción básica en cualquier lenguaje de programación. No está ligada a menús ni formularios de Visual FoxPro, es parte del lenguaje.
Como te mencionaba, el "DO CASE" hará que el programa ejecute cierto código según el valor que tenga el dato a evaluar. Te mando un ejemplo que puedes utilizar en un formulario.
Pensando en un formulario que tiene un cuadro de texto (txtNumeroLetra) y un botón (btnValor). Se escribirá un número con letra (del 0 al 9) en el cuadro de texto y al dar clic en el botón, se mostrará un mensaje que diga el valor numérico tecleado.
** Evento clic del botón "btnValor"
** Se convierte el texto a minúsculas, se quitan los espacios en blanco y se guarda en una variable
cNumero = LOWER(ALLTRIM(ThisForm.txtNumeroLetra.Value))
** Se evalúa el texto tecleado con la instrucción "DO CASE"
DO CASE
CASE cNumero == "cero" && Si el texto es "cero", cValor será "0"
cValor = "0"
CASE cNumero == "uno" && Si el texto es "uno", cValor será "1"
cValor = "1"
CASE cNumero == "dos"
cValor = "2"
CASE cNumero == "tres"
cValor = "3"
CASE cNumero == "cuatro"
cValor = "4"
CASE cNumero == "cinco"
cValor = "5"
CASE cNumero == "seis"
cValor = "6"
CASE cNumero == "siete"
cValor = "7"
CASE cNumero == "ocho"
cValor = "8"
CASE cNumero == "nueve"
cValor = "9"
OTHERWISE && Si el texto no fue ninguno de los casos anteriores, se ejecutará la siguiente línea
cValor = "El texto no se reconoció como un número válido del 0 al 9"
ENDCASE
** Se muestra el mensaje
MESSAGEBOX("Resultado: " + cValor)
Gracias por esa respuesta me ayudaste a entender mejor pero aun no c que otra cosa hacer aparte de ese programa, lo que necesitaría seria resolver algún problema usando "Do Case"
Pero igual Muchas Gracias.
Mm un problema, pues puede ser ese mismo del ejemplo, o si no, algo muy común podría ser mostrar el mes de cierta fecha con letra. Por ejemplo, un formulario con un botón que al darle clic muestre la fecha actual.
** Código del botón
dHoy = DATE() && Fecha de hoy
nDia = DAY(dHoy) && Día del mes
nMes = MONTH(dHoy) && Número del mes (1 a 2)
nAnio = YEAR(dHoy) && Año actual
** Se obtiene el mes con letra usando un "DO CASE"
DO CASE
CASE nMes == 1
cMes = "Enero"
CASE nMes == 2
cMes = "Febrero"
... && Aquí los meses faltantes
CASE nMes == 12
cMes = "Diciembre"
ENDCASE
** Se muestra el mensaje
MESSAGEBOX("Hoy es el día " + STR(nDia, 2) + " del mes de " + cMes + " del año de " + STR(nAnio, 4))
No probé el código pero se supone debe funcionar sin problemas, en caso de no ser así, avísame.
CASE nMes == 1
cMes = "Enero"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas