Mettre une fenetre au premier plan [Delphi] - Programmation
Marsh Posté le 24-02-2002 à 12:41:08
DrLobo a écrit a écrit : j'ai une fiche toute simple et je voudrait la mettre au premier plan toute les minutes. Probleme je n'y arrive pas. J'ai essayé avec les api window suivantes: SetActiveWindow(handle) SetForegroundWindow(handle) SetActiveWindow(handle) SetWindowPos(handle,HWND_TOP,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE) rien ne marche! par contre SetWindowPos(handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE) marche! mais apres je n'arrive plus a rendre la fenetre normale |
Salut,
Pour mettre un fenêtre au 1er plan en permanance, utilise :
Form1.FormStyle := fsStayOnTop;
et pour la rendre normale :
Form1.FormStyle := fsNormal;
T'as qu'à utiliser un Timer avec le code suivant :
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form1.FormStyle := fsStayOnTop;
Form1.FormStyle := fsNormal;
end;
J'ai pas essayé mais ça devrait marcher. De plus c'est compatible Kylix (et pas les API...)
@++
Marsh Posté le 24-02-2002 à 12:44:19
weppp ! ça marche j'ai essayé (logique d'ailleurs)
Marsh Posté le 24-02-2002 à 12:45:46
Application.BringToFront;
Marsh Posté le 24-02-2002 à 13:40:42
merci, les 2 solutions marchent (la 2eme est qd meme plus élégante )
Marsh Posté le 24-02-2002 à 16:44:40
DrLobo a écrit a écrit : merci, les 2 solutions marchent (la 2eme est qd meme plus élégante ) |
Merci
Marsh Posté le 24-02-2002 à 17:28:13
[SDF]Poire a écrit a écrit : Application.BringToFront; |
Hey je fais plus trop de delphi c'est normal, que je sois moins élégent
Now je fais du C++
@++
[jfdsdjhfuetppo]--Message édité par juju_le_barbare--[/jfdsdjhfuetppo]
Marsh Posté le 24-02-2002 à 18:12:02
juju_le_barbare a écrit a écrit : Hey je fais plus trop de delphi c'est normal, que je sois moins élégent Now je fais du C++ @++ |
Moi C le contraire...
G fait (et je fais tjs) du C/C++ sous DOS
Mais sous win Delphi roulez
Marsh Posté le 24-02-2002 à 11:52:12
j'ai une fiche toute simple et je voudrait la mettre au premier plan toute les minutes.
Probleme je n'y arrive pas.
J'ai essayé avec les api window suivantes:
SetActiveWindow(handle)
SetForegroundWindow(handle)
SetActiveWindow(handle)
SetWindowPos(handle,HWND_TOP,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE)
rien ne marche!
par contre SetWindowPos(handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE) marche!
mais apres je n'arrive plus a rendre la fenetre normale