NEO ::: TEAM
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

NEO ::: TEAM

New Evolution Owner
 
AccueilRechercherDernières imagesS'enregistrerConnexion
Le deal à ne pas rater :
BD Saint Seiya – Time Odyssey Tome 3 Collector
Voir le deal

 

 Comment remettre son application en avant plan ?

Aller en bas 
AuteurMessage
Admin
Fondateur
Fondateur
Admin


Nombre de messages : 197
Age : 40
Localisation : Tlemcen ( Algérie )
Date d'inscription : 04/12/2006

Comment remettre son application en avant plan ? Empty
MessageSujet: Comment remettre son application en avant plan ?   Comment remettre son application en avant plan ? Icon_minitimeVen 12 Jan - 6:20

Comment remettre son application en avant plan ?
La fonction SetForeGroundWindow permet de mettre une fiche en avant-plan directement. Mais depuis Windows 98 et Windows 2000 elle ne place plus la fenêtre en avant-plan mais se contente de la faire clignoter dans la barre des tâches.
Windows limite la possibilité de passer la fenêtre en avant-plan. Tant que l'application n'est pas elle-même en avant-plan, il n'est pas possible de mettre une fenêtre en avant-plan, ce qui en limite beaucoup l'intérêt.

La solution proposée par la MSDN est de changer la base de registre afin de supprimer cette limitation. Ce n'est pas la meilleure méthode à mon avis.

Une autre méthode est d'attacher très provisoirement l'application au processus actuellement en avant-plan. Ainsi, Windows va croire que notre application est en avant-plan et autoriser d'y mettre la fenêtre.
Ceci peut se faire en quelques lignes :



Code:




procedure TForm1.Devant;
Var Proc,Nous:Integer;
begin
  Proc:=GetWindowThreadProcessId(GetForeGroundWindow);
  Nous:=GetCurrentThreadID;
  If Proc<>Nous Then
  Begin
    // Nous ne sommes pas l'application en premier plan
    AttachThreadInput(Nous,Proc,True);
    SetForeGroundWindow(Handle);
    AttachThreadInput(Nous,Proc,False);
    Application.BringToFront;
  End Else
  Begin
    // Nous sommes déjà en premier plan
    SetForeGroundWindow(Handle);
  End;
end;
Revenir en haut Aller en bas
https://neo-team.forumactif.com
 
Comment remettre son application en avant plan ?
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Comment fermer une application externe ?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
NEO ::: TEAM :: Informatique :: Les RADs :: Borland Delphi 4,5,6,7-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser