Fenetre active

Résolu
hardouz Messages postés 196 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 26 novembre 2009 - 21 nov. 2007 à 00:34
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 - 22 nov. 2007 à 10:43
salut
quelqu'un peut m'expliquer comment determiner le nom de la fenetre active !!!! (determiner le texte dans la barre de titre de la fenetre active )
merci d'avance

merci ;)

6 réponses

l0sth34d2 Messages postés 76 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 13 novembre 2008 1
21 nov. 2007 à 21:13
function ActiveCaption: string;
var
  Handle: THandle;
  Len: LongInt;
  Title: string;
begin
  Result := '';
  Handle := GetForegroundWindow;
  if Handle <> 0 then
  begin
    Len := GetWindowTextLength(Handle) + 1;
    SetLength(Title, Len);
    GetWindowText(Handle, PChar(Title), Len);
    ActiveCaption := TrimRight(Title);
  end;
end;
3
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
21 nov. 2007 à 09:11
screen.activeform.caption ?
0
hardouz Messages postés 196 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 26 novembre 2009
21 nov. 2007 à 19:01
salut
-determiner le nom de la fenetre active sur windows pas de mon application :)
0
hardouz Messages postés 196 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 26 novembre 2009
21 nov. 2007 à 20:11
apparement c'est GetForeGroundWindow pour renvoyer le handle de la fenetre active mais comment l'utiser pour afficher le texte de cette fenetre  Getwindows text ?

merci ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hardouz Messages postés 196 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 26 novembre 2009
21 nov. 2007 à 22:15
salut
merci ça marche trés bien mais pourquoi le +1 et c'est quoi le trimright ?
merci d'avance
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
22 nov. 2007 à 10:43
Salut,

Je suppose :
+ 1 parce que GetWindowText retourne un résultat tronqué d'un caractère dans la plupart des cas => donc TrimRight pour les autres cas.

Personnellement, je prèfère utiliser un array of Char pour récupérer la valeur, ça simplifie et raccourcit le code :

var
  Handle: THandle;
  Title: array[0..255] of Char;
begin
  Result := '';
  Handle := GetForegroundWindow;
  if Handle <> 0 then
  begin
    GetWindowText(Handle, Title, SizeOf(Title));
    Result := Title;
  end;
end;

Bonne prog'
0