Chamar Tela de Login em Formulario MDI Form
Oi pessoal, eu estou fazendo um sistema com formulários MDI, e gostaria de saber se vocês poderiam me ajudar tirando uma dúvida...
Quando eu vou acessar o sistema, eu chamo a tela de login antes de aparecer o Form MDI principal, ele so me aparece quando eu logo, até ai tudo bem, mas quando eu chamo os formulários MDI Child, me ocorre um erro, dizendo que o formulário não está sendo criado da maneira correta.
Alguém poderia me ajudar?
Quando eu vou acessar o sistema, eu chamo a tela de login antes de aparecer o Form MDI principal, ele so me aparece quando eu logo, até ai tudo bem, mas quando eu chamo os formulários MDI Child, me ocorre um erro, dizendo que o formulário não está sendo criado da maneira correta.
Alguém poderia me ajudar?
Angelica Soares
Curtidas 0
Melhor post
Alan Souza
25/02/2010
eu costumo criar assim, vê se dá certo no seu caso:
if not Assigned(frmClientes) then
Application.CreateForm(TfrmClientes,frmClientes);
frmClientes.Show;
lembrando que nesse caso os formulários MDI não podem ser Auto-Create no projeto (Menu Project|Options|aba Forms)
if not Assigned(frmClientes) then
Application.CreateForm(TfrmClientes,frmClientes);
frmClientes.Show;
lembrando que nesse caso os formulários MDI não podem ser Auto-Create no projeto (Menu Project|Options|aba Forms)
GOSTEI 1
Mais Respostas
Alan Souza
25/02/2010
como você está fazendo a chamada aos forms MDI Child?
Dê algum exemplo de preferência
Dê algum exemplo de preferência
GOSTEI 0
Angelica Soares
25/02/2010
Eu tenho disponibilizado no formulário principal, um menu que eu chamo os formulários.
E ao chamá - los eu faço:
Ex.:
Frmclientes:= TFrmclientes.Create(Self);
Frmclientes.show;
Lembrando que o formulário está como MDI Child, visible = true.
E ao chamá - los eu faço:
Ex.:
Frmclientes:= TFrmclientes.Create(Self);
Frmclientes.show;
Lembrando que o formulário está como MDI Child, visible = true.
GOSTEI 0
Thiago Santana
25/02/2010
Amigo tente chamar seus formulários assim:
Nomedoformulario := TNomedoformulário.Create(Self);
Nomedoformulario.Showmodal;
Nomedoformulario.Free; Isto deveresolver teu problema! Espero ter ajudado...
Nomedoformulario.Showmodal;
Nomedoformulario.Free; Isto deveresolver teu problema! Espero ter ajudado...
GOSTEI 0
Angelica Soares
25/02/2010
Galera vou tentar fazer as dicas, logo mais posto aqui novamene no Forum. Até.
GOSTEI 0
Euclides Cunha
25/02/2010
Para criar um form login, em formularios MDI, altere a propriedade de form login para ( Form->FormStyle->sStayOnTop )
GOSTEI 1
Angelica Soares
25/02/2010
Obrigada euclides, vou tentar.
GOSTEI 0
Mazin
25/02/2010
faz como abaixo:
program Project2;
uses
Forms,
Controls,
Unit1 in 'Unit1.pas' ,
Unit2 in 'Unit2.pas' ;
{$R *.res}
begin
FrmLogin := TFrmLogin.Create(Application);
try
if FrmLogin.ShowModal = mrOk then
begin
Application.Initialize;
Application.CreateForm(TFrmPrincipal, FrmPrincipal);
Application.Run;
end;
finally
FrmLogin.Free;
end;
end.
e no botão login usa:
ModalResult := mrOk;
caso os dados forem informados corretamente
program Project2;
uses
Forms,
Controls,
Unit1 in 'Unit1.pas' ,
Unit2 in 'Unit2.pas' ;
{$R *.res}
begin
FrmLogin := TFrmLogin.Create(Application);
try
if FrmLogin.ShowModal = mrOk then
begin
Application.Initialize;
Application.CreateForm(TFrmPrincipal, FrmPrincipal);
Application.Run;
end;
finally
FrmLogin.Free;
end;
end.
e no botão login usa:
ModalResult := mrOk;
caso os dados forem informados corretamente
GOSTEI 0
Angelica Soares
25/02/2010
Eu já fiz essas tentativas e nada, Mazin vou fazer a tua dica, e logo mais coloco aqui como ficou.
até mais.
até mais.
GOSTEI 0