hardouz
Messages postés196Date d'inscriptionjeudi 22 février 2007StatutMembreDernière intervention26 novembre 2009
-
21 nov. 2007 à 00:34
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDerniè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
l0sth34d2
Messages postés76Date d'inscriptionmercredi 21 mars 2007StatutMembreDernière intervention13 novembre 20081 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;
hardouz
Messages postés196Date d'inscriptionjeudi 22 février 2007StatutMembreDernière intervention26 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 ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDernière intervention 6 novembre 20218 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;