PDA

Ver la Versión Completa : Formulario de login!!


ElCherchu
23-09-2003, 15:29:14
Hola amigos!!!

Necesito saber como puedo mostrar el formulario de login inmediatamente despues de haber mostrado el menu principal, esto para introducir la clave y a trabajar...

Cuento con ustedes..

ElCherchu..

delphi.com.ar
23-09-2003, 15:51:08
Si quieres que se muestre el principal y a partir de ahí aparezca el login, lo disparas en el OnShow del principal:procedure TFrmPrincipal.FormShow(Sender: TObject);
begin
with TFrmLogin.Create(Self) do
try
if ShowModal = mrCancel Then
Self.Close;
finally
Free;
end;
end;

Saludos!

Leonard
16-05-2004, 19:06:07
En mi Caso muestro Una ventana de Dialogo donde el usuario debe mostrar de clave o acceso justo antes de ver el menu principal es decir antes de ejecutar la aplicacion.

Lo hago del siguiente Modo el programa principal coloco lo siguiente

begin
Application.Initialize;
Application.Title := 'Facturacion';
Application.CreateForm(TF_Principal, F_Principal);
Application.CreateForm(TMdatos, Mdatos);
Application.CreateForm(TF_Clave, F_Clave);
F_Clave.ShowModal;
If F_Clave.Tiene_Acceso
Then begin
Application.Run;
End
Else Begin
Mdatos.Conexion_BD.Close;
Application.Terminate;
End
end.

y en el formulario clave le creas las propiedades

private
{ Private declarations }
Acceso : Boolean;
public
{ Public declarations }
Property Tiene_Acceso : Boolean Read Acceso Write Acceso;
end;


y por ultimo en el boton aceptar coloco lo siguiente

if Mdatos.T_UsuarioClave_Usuario.Value = Clave_Usuario.Text
Then Tiene_Acceso := True;



Espero que te sea util..!!

DarkByte
16-05-2004, 20:46:26
Leonard, prueba a encerar tu código en las etiqueta [ Delphi ] [ / Delphi ] (sin espacios), verás que tiene mejor presentación.

Así quedaría tu codio con dichas etiquietas:


begin
Application.Initialize;
Application.Title := 'Facturacion';
Application.CreateForm(TF_Principal, F_Principal);
Application.CreateForm(TMdatos, Mdatos);
Application.CreateForm(TF_Clave, F_Clave);
F_Clave.ShowModal;
If F_Clave.Tiene_Acceso
Then begin
Application.Run;
End
Else Begin
Mdatos.Conexion_BD.Close;
Application.Terminate;
End
end.


private
{ Private declarations }
Acceso : Boolean;
public
{ Public declarations }
Property Tiene_Acceso : Boolean Read Acceso Write Acceso;
end;


if Mdatos.T_UsuarioClave_Usuario.Value = Clave_Usuario.Text
Then Tiene_Acceso := True;

Tampoco estaría mal que identases tu código.

MITOPE
18-05-2004, 17:33:26
Amigos Disculpen que me meta en su conversacion, pero tambien necesitaba algo asi , probe y me funciono , lo que no se es que poner en el boton cancelar del formulario login, solo trabajo con el principal y el form del login

begin
Application.Initialize;
Application.CreateForm(TFrmPrincipal, FrmPrincipal);
Application.CreateForm(TFrmIngreso, FrmIngreso);
FrmIngreso.ShowModal;
if FrmIngreso.TieneAcceso then
Application.Run
else
Application.Terminate;
end;
end.

En el boton cancelar puse esto pero me sale un error 'EAcces violation....'

Begin
Acceso := False;
Close;
end;

el error me sale justo despues de ejecutar correctamente el comando 'Application.Terminate', cuando se ubica en el End..como que quisiera ejecutar algo mas...que no se que es , no se si me pueden ayudar

eduarcol
18-05-2004, 17:51:55
mira primero que todo, utiliza por favor las etiquetas para encerrar el codigo:

yo cambiaria algunas lineas de tu codigo algo asi:


begin
Application.Initialize;
Application.CreateForm(TFrmPrincipal, FrmPrincipal);
Application.CreateForm(TFrmIngreso, FrmIngreso);
if FrmIngreso.ShowModal = mrOk then
Application.Run;
Application.Terminate;
end.


y el boton cancelar la propiedad modal result le das mrCancel

por supuesto en el de aceptar cuando asignesel valor a la variable tiene accesocambia esa linea por ModalResult := mrOk, listo

__cadetill
18-05-2004, 17:55:02
te aconsejo te leas este hilo (http://www.clubdelphi.com/foros/showthread.php?t=3810&highlight=usuario). En él se explicó como funciona el tema del loggin

MITOPE
18-05-2004, 18:47:23
Gracias Amigo , Ya Funciono Con Tu Ayuda...!!

Saludos..