Como localizar tela(janela) da aplicacão ja aberta!
Bom é o seguinte crio meus forms da seguinte maneira
e crie um form para consultas em geral, e chamo ela atraves de um tecla geral de atalho em todo o sistema, o problema é que eu consigo criar esta tela mais de uma vez, uma por cima da outra e eu quero evitar isso, como eu poderia fazer?
Procurei mas nao encontrei nada que pude-se resolver meu problema.
form1:=tform1.create(self); try form1.showmodal; finally form1.free; form1:=nil; end;
e crie um form para consultas em geral, e chamo ela atraves de um tecla geral de atalho em todo o sistema, o problema é que eu consigo criar esta tela mais de uma vez, uma por cima da outra e eu quero evitar isso, como eu poderia fazer?
Procurei mas nao encontrei nada que pude-se resolver meu problema.
Xtreme
Curtidas 0
Respostas
Eniorm
21/05/2008
faz assim
if (SeuForm = Nil) then SeuForm := TSeuForm.Create(Nil); // eu prefiro passar nil try SeuForm.ShowModal; finally SeuForm.Release; SeuForm := Nil; end;
GOSTEI 0
Xtreme
21/05/2008
[quote:bbbbf7abbc=´Enio Marconcini´]faz assim
[/quote:bbbbf7abbc]
Até tentei mas não deu certo! Valeu pela ajuda, estou querendo poder abrir minhas janelas sem ficar preso no showmodal, podendo abrir mais de uma janela por vez, mas não a mesma duas vezes.
if (SeuForm = Nil) then SeuForm := TSeuForm.Create(Nil); // eu prefiro passar nil try SeuForm.ShowModal; finally SeuForm.Release; SeuForm := Nil; end;
Até tentei mas não deu certo! Valeu pela ajuda, estou querendo poder abrir minhas janelas sem ficar preso no showmodal, podendo abrir mais de uma janela por vez, mas não a mesma duas vezes.
GOSTEI 0
Eniorm
21/05/2008
neste caso vc deve usar janelas MDI
o form principal da aplicação deve ser MDIForm
o restante MDIChild
vc faz assim neste caso
no evento [b:aa900ffcc9]OnClose [/b:aa900ffcc9]de cada form MDIChild vc usa:
o form principal da aplicação deve ser MDIForm
o restante MDIChild
vc faz assim neste caso
if NomeForm = Nil then NomeForm := TNomeForm.Create(Nil); NomeForm.Show;
no evento [b:aa900ffcc9]OnClose [/b:aa900ffcc9]de cada form MDIChild vc usa:
Release; NomeForm := Nil;
GOSTEI 0
Emerson Nascimento
21/05/2008
tente algo assim:
if Application.FindComponent(´Form1´) = nil then Application.CreateForm(TForm1, Form1) else Form1.BringToFront; Form1.WindowState:=wsNormal;
GOSTEI 0