Ver Mensaje Individual
  #12  
Antiguo 30-07-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Reputación: 21
Chris Va por buen camino
Utiliza este código. Inicializaré la variable ClaveCorrecta para ver si es eso lo que te está dando problemas
Código Delphi [-]
var
    apellido, contrasena: String; // utiliza variables más descriptivas.
                                  // Es una buena practica de programación.
    ClaveCorrecta: Boolean;       // utilizada para indicar si el usuario
     Intentos: Integer;           // utilizó un usuario y contraseña correctos.
begin
    apellido := Edit1.Text;
    contrasena := Edit2.Text;
    ClaveCorrecta := False;    
    edit1.Clear;
    edit2.Clear;
    table1.First;
    edit1.SetFocus;
    
    while table1.eof = false do
    begin
        // comparar el usuario y contrasena
        if (Table1.FieldByName('Apellido').AsString = apellido) and
           (Table1.FieldByName('Clave').AsString = contrasena) then
        begin
            ClaveCorrecta := True;
            Form1.Hide;
            Form2.Show;
        end;
        
        // compararemos con el siguiente registro en la DB
          table1.Next;
    end;    
    
    // no se utilizó un usuario y contraseña correcta?
    if not ClaveCorrecta then
    begin
        ShowMessage('Clave Incorrecta');
        // aumentamos el número de intentos
        Inc(Intentos); // Inc(Intentos) = Intentos := Intentos + 1;
        
        // ya hizo los 4 intentos?
        if Intentos >= 4 then
        begin
            ShowMessage('Adios!');
            Application.Terminate; // cierra la aplicación
        end;
    end;
end;

Saludos,
Chris
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita