Ver Mensaje Individual
  #5  
Antiguo 20-02-2010
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Reputación: 19
rgstuamigo Va por buen camino
Arrow

Para qué complicarse tanto,tan sólo has esto en el evento OnCreate de tu Formulario principal:
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.ShowMainForm:=False;//Esto hace que el formulario principal sea no visible.
end;
Luego en tiempo de Diseño pones la propiedad Visible=True y su propiedad FormStyle=fsNormal de tu formulario que es donde el usuario se Loguea, de esa manera cuando corra tu aplicacion lo primero que se va mostrar es el formulario donde se loguea.
Para el caso de sólo permitir 3 intentos pues te es suficiente tener una variable que cuente las veces que el usuario intentó, ésto sería en el boton de Aceptar de tu formulario de Logueo mas o menos así:
Código Delphi [-]
procedure TFormDeLogueo.ButtonAceptarClick(Sender: TObject);
begin
  if El_Logueo_EsValido then  //si el usuario a introducido el login y contraseña valida
       begin
         Self.Hide;//encondo el formulario de Logueo
         Application.MainForm.Show;// Recien muestro el formulario Principal
      end
  else
     begin
     Cantidad_de_Intentos:=Cantidad_de_Intentos+1;
       If Cantidad_de_Intentos=3 then
         begin
           ShowMessage('Intentos Agotados');
           Application.Terminate;//Termina la aplicacion ya intentó 3 veces
         end
       else
         ShowMessage('Usuario desconocido..');
     end;
end;
Desde luego debes inicializar la variable Cantidad_de_Intentos con cero, ésto lo puedes hacer en el evento OnCreate de tu formualrio de Logueo.
Espero te sea de Utilidad..
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7

Última edición por rgstuamigo fecha: 20-02-2010 a las 00:09:16.
Responder Con Cita