Fórum Form na frente de tudo #341526
09/05/2007
0
Tenho uma agenda de compromissos que fica minimizada e qdo chega a hora do compromisso ela mostra um form avisando. Como eu faço para que esse form seja mostrado na frente de todas as aplicações que estiverem abertas? Tentei colocar a propriedade formstyle como fsStayOnTop mas não adiantou.
Luiz
L_carlos
Curtir tópico
+ 0Posts
09/05/2007
Fabiano Góes
use este método para minimizar todos os aplicativos aberto:
procedure HideAll; var Shell: OleVariant; begin Shell := CreateOleObject(´Shell.Application´) ; Shell.MinimizeAll; end;
antes da chamada do seu Form você primeiro minimiza todos os aplicativos abertos depois chama o seu Form, algo assim:
begin HideAll; Application.CreateForm(TSeuForm, SeuForm); try SeuForm.ShowModal; finally SeuForm.Free; end; end;
acho que assim deve funcionar,
espero ter ajudado !!!
um grande abraço !!!
Gostei + 0
09/05/2007
L_carlos
Eu não queria minimizar os programas abertos e sim mostrar o form sobre os programas abertos. Aí encontrei essa dica e funcionou blza, o form é mostrado na frente de todos os programas abertos.
//(LIGAR) FORM NA FRENTE DE TUDO
SetWindowPos(Form3.handle, HWND_TOPMOST, Form3.Left, Form3.Top,Form3.Width, Form3.Height, 0);
//(DESLIGAR) FORM NA FRENTE DE TUDO
SetWindowPos(Form3.handle, HWND_NOTOPMOST, Form3.Left, Form3.Top,Form3.Width, Form3.Height, 0);
Luiz
Gostei + 0
10/05/2007
Fabiano Góes
o importante é que conseguiu a solução,
vou até guardar esse código também :lol:
um abraço !!!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)