Como posso Impedir diversas aberturas de um mesmo form MDI
Estou com um probleminha, como posso impedir diversas aberturas de um mesmo form MDIChield. tentei o FindWindow, mas ñ obtive exito.
Desde já obrigado galera.
Desde já obrigado galera.
Cabal
Curtidas 0
Respostas
Paullsoftware
07/07/2006
cria essa função:
e para usar faz assim: espero ter ajudado :wink:
// Verifica se o form a ser criado já esta carregado function FormExiste(aberto: Tform): Boolean; var I:Integer; begin FormExiste := false; for I := 0 to Screen.FormCount -1 do if Screen.Forms[i] = aberto then begin FormExiste := true; Break; end end;
if not FormExiste(FrmCadClientes) then begin FrmCadClientes := TFrmCadClientes.Create(nil); FrmCadClientes.BringToFront; FrmCadClientes.Focused; end else begin FrmCadClientes.BringToFront; FrmCadClientes.Focused; end;
GOSTEI 0
Aasn
07/07/2006
Caro Cabal,
é bem simples:
[]´s
AASN
é bem simples:
procedure TForm1.Button1Click(Sender: TObject);
var i : integer;
begin
{ verifica se ja existe o form aberto }
for i := 0 to MDIChildCount -1 do
if MDIChildren[i].ClassType = TForm2 then
Abort;
{ caso nao exista cria e abre }
Application.CreateForm(TForm2, Form2);
Form2.Show;
end;[]´s
AASN
GOSTEI 0
Imoreira
07/07/2006
if not assigned(SeuForm) then begin
application.createform(TSeuForm,SeuForm);
SeuForm.show;
end else begin
SeuForm.WindowState:=wsNormal;
SeuForm.BringToFront;
end;
No onClose do SeuForm faça:
SeuForm:=nil;
application.createform(TSeuForm,SeuForm);
SeuForm.show;
end else begin
SeuForm.WindowState:=wsNormal;
SeuForm.BringToFront;
end;
No onClose do SeuForm faça:
SeuForm:=nil;
GOSTEI 0