Cita:
Empezado por CarlosHernandez
la aplicacion comienza con una pantalla de login y contraseña para accesar al sistema, y por defecto es la primera que se crea (por eso digo que es la principal)
|
Por aquí hubieras empezado
Como has notado, el primer formulario que se crea es el principal. Pero esto no es totalmente cierto. Más exacto es decir que el primer formulario que se crea con Application.CreateForm es el principal.
En otras palabras, es CreateForm el que establece quién será el formulario principal. Pero dicho método no es el único para crear formularios. Lo usual aquí es modificar a mano el archivo dpr que normalmente se ve así:
Código Delphi
[-]
program Project1;
uses
Forms,
uMain in 'uMain.pas' ,
uLogin in 'uLogin.pas' ;
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TLoginForm, LoginForm);
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end.
Entonces, para que no se interprete a LoginForm como el principal, pero que aún así sea el primero que ve el usuario, tienes que crearlo de otra forma, por ejemplo:
Código Delphi
[-]
program Project1;
uses
Windows, Forms,
uMain in 'uMain.pas' ,
uLogin in 'uLogin.pas' ;
{$R *.res}
begin
Application.Initialize;
LoginForm := TLoginForm.Create(Application);
if LoginForm.ShowModal = ID_OK then
begin
LoginForm.Free; Application.CreateForm(TMainForm, MainForm);
end;
Application.Run;
end.
// Saludos