Visual foxpro

Apenas me inicio en programas Visual Foxpro, si me pudieras apoyar, quiero hacer un formulario que si se escribe el usuario y contraseña correcta, permita ingresar a otro formulario, pero después de 3 intentos erróneos, me saque del formulario con un mensaje de error, quise intentarlo con un ciclo for pero no lo respeta, si me puedes apoyar. Te envío el programa del botón ACEPTAR. Gracias.
a=0
if Thisform.Text1.Value= "maya" and Thisform.Text2.Value= 25
do form calculadora
else
for a= 0 to 3
messagebox ("clave incorrecta")
a= a +1
thisform.text1.setfocus
Endfor
Endif
messagebox("infringiste en error los 3 intentos de acceso, tu cuenta ha sido bloqueada")
RELEASE thisform

4 Respuestas

Respuesta
1
El control para saber cuántas veces se ha equivocado el usuario, mejor usa una propiedad personalizada del formulario. Abre el formulario y dale clic al menú Form-New Property (ejemplo: mipropiedad) ponle un valor por defecto de 0.
Entonces en tu botón:
if thisform.mipropiedad<3
    if Thisform.Text1.Value= "maya" and Thisform.Text2.Value= 25
        do form calculadora
    else
        thisform.mipropiedad=thisform.mipropiedad+1
        messagebox ("clave incorrecta")
        thisform.text1.setfocus
    Endif
else
    Messagebox("Cuenta Bloqueada")
    RELEASE thisform
Endif
Respuesta
1
¿Podrías pasarme tu correo para enviarte un ejemplo de un proyecto que tiene un formulario de inicio?
Mi correo es: [email protected]
Disculpa la tardanza en contestar, es que no tengo internet pero ahí te envío el ejemplo.
Respuesta
1
Proba con este Código...
Espero te sirva...
a=0
if Thisform.Text1.Value= "maya" and Thisform.Text2.Value= 25
do form calculadora
else
*for a= 0 to 3
messagebox ("clave incorrecta")
a= a +1
thisform.text1.setfocus
*endfor
endif
if a=3
Messagebox("infringiste en error los 3 intentos de acceso, tu cuenta ha sido bloqueada")
RELEASE thisform
Endif
Hey Disculpa el Código Anterior esta Mal... Pero aquí esta el código que puedes Usar
*********************
*Mira Coloca este codigo en el evento Init de form
Public A
A=0
*********************
*Y coloca este Codigo en el Evento Click Del Boton Aceptar
if Thisform.Text1.Value= "maya" and Thisform.Text2.Value= 25
do form calculadora
else
messagebox ("clave incorrecta")
A=A+1
IF A=3
Messagebox("infringiste en error los 3 intentos de acceso, tu cuenta ha sido bloqueada")
Thisform. RELEASE
Endif
thisform.text1.setfocus
Endif
*************************
Se queda ciclada no sale "Clave Incorrecta"
Donde se queda ciclado... No hay ningún ciclo en ese Código...
Es que solo sale el mensaje "clave incorrecta" y de ahí no sale, no respeta los 3 intentos erróneos de acceso, y que me envíe al mensaje "INFRINGISTE EN ERROR LOS 3 INTENTOS DE ACCESO, TU CUENTA HA SIDO BLOQUEADA"
¿Colocaste el Código Siguiente en el Init Del Formulario?
Public A
A=0
De lo contrario no te Funcionará
Respuesta
1
Creo que mejor lo deberías hacer de la siguiente manera :
primero en el evento load del form debes crear esta variable
PUBLIC nIntentos
nIntentos = 0
luego en el evento click del boton aceptar deberia ir el siguiente codigo :
if thisform.text1.value='mayra' and thisform.text2.value=25
do form calculadora
else
nIntentos = nIntentos + 1
if nIntentos = 3
messagebox('Infringiste en error los 3 intentos de acceso, tu cuenta ha sido bloqueada'
end
else
thisform.text1.setfocus
endif
endif

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas