FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Salir de un While
Hola de nuevo, estoy haciendo una pantalla de validación de usuarios, y he puesto un While para que se vaya a leer a un archivo mientras el usuario no sea correcto (para ir comparando), el problema es que quiero que en el momento que encuentre un usuario válido salga del While (y que no siga leyendo el archivo), ¿se podría hacer esto?. Gracias de antemano por vuestra ayuda.
__________________
"La perseverancia es el camino del éxito" |
#2
|
|||
|
|||
Hola compañero,
Código:
var intentos : Integer; encontrado : Boolean; .... Intentos:=0; Encontrado:=False; While (not Encontrado) and (Intentos<3) do begin if (TUsuarioUsuario.asstring=Edit1.Text) and (TUsuarioClave.asstring=Edit2.Text) then // sustituye esto por una busqueda en tu base de datos (Query, Locate,...) Encontrado:=True else Inc(Intentos); end; if Encontrado then // ---> Puede entrar else // Ha superado el nº de intentos permitidos Saludos.
__________________
Rafita. |
#3
|
|||
|
|||
Gracias por la solución.
Una vez más gracias Rafita.
__________________
"La perseverancia es el camino del éxito" |
#4
|
||||
|
||||
Usa...
Haz probado usando Abort ó Exit ?????
Que tengas buen día. |
#5
|
|||
|
|||
Cita:
abort lanza una excepción silenciosa (sin mensaje) que al igual que cualquier otra excepción saltará la ejecución de la aplicación hasta encontrar un bloque try-except. exit ocasiona que el flujo de la aplicación salga del procedimiento desde donde se llama. Así que, en ambos casos, se sale bastante más allá del ciclo while. Quizá estabas más bien pensando en break que, en efecto, podría usarse en este caso: Código:
var Encontrado: Boolean; begin Encontrado := false; while not Encontrado do begin Encontrado := BuscarUsuario; if Encontrado then break; end; end; |
#6
|
||||
|
||||
asi es
Me falto el Break;....
|
|
|
|