Perdón si te causé confusión. El frmMain (FormPrincipal) es el MDI que contiene a las hijas, y no tiene nada que ver con el FLogin.
Aquí está el código. Es del archivo "frmMain.pas", que es donde se crea la SplashScreen (no en el DPR, como te había dicho; eso lo hago en otro programa), la ventana Login y se inicia el programa.
Código Delphi
[-]
unit frmMain;
...
var
FFondo: TFFondo;
Usuario: String;
implementation
...
procedure TfrmMain.FormCreate(Sender: TObject);
begin
Usuario:='';
FSplash:=TFSplash.Create(Self);
FSplash.Show;
FSplash.EAccion.Caption:='Inicializando...';
...
FSplash.Barra.Progress:=FSplash.barra.Progress+1;
FSplash.Repaint;
...
FSplash.EAccion.Caption:='Autorizando...';
FSplash.Barra.Progress:=FSplash.barra.Progress+1;
FSplash.Repaint;
FLogin:=TFLogin.Create(Self);
If FLogin.ShowModal=mrOk then
begin
Usuario:=FLogin.CUsuario.Text;
...
end;
FLogin.Free;
FSplash.EAccion.Caption:='Leyendo datos...';
FSplash.Barra.Progress:=FSplash.Barra.Progress+1;
FSplash.Repaint;
...
FSplash.Free;
...
end;
...
Y una vez iniciado el programa, para cambiar de usuario:
Código Delphi
[-]
Procedure TfrmMain.mCambiarUsuario(Sender: TObject);
begin
... Visible:=False;
FLogin:=TFLogin.Create(Self);
FLogin.CUsuario.Text:=Usuario; Usuario:=''; FLogin.ShowModal;
If FLogin.ModalResult:=mrOk
begin
Usuario:=FLogin.CUsuario.Text;
...
end;
end;
Espero que te sea de ayuda.
Salu2
P.D:
Cita:
Empezado por BlackDaemon
PD me gustaría mucho que me envies el código
|
Aquí preferimos poner el código para que todo el mundo lo vea. Además sería una tontería enviarte todo el código de mi programa, con el ejemplo que aquí te he puesto hay suficiente (pues en el proceso de carga hace muchísimas cosas).