begin process at 2008 08 29 20:40:10
1 233 885 membres
407 nouveaux aujourd'hui
14 294 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : fenetre active [ Algorithme / Autre ] (Hardouz)

fenetre active le 21/11/2007 00:34:55

Hardouz
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 ;)

Re : fenetre active le 21/11/2007 09:11:05

Guillemouze
screen.activeform.caption ?

Re : fenetre active le 21/11/2007 19:01:18

Hardouz

salut
-determiner le nom de la fenetre active sur windows pas de mon application :)


Re : fenetre active le 21/11/2007 20:11:50

Hardouz
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 ;)

Re : fenetre active le 21/11/2007 21:13:43

l0sth34d2
Réponse acceptée !
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;

Re : fenetre active le 21/11/2007 22:15:13

Hardouz

salut
merci ça marche trés bien mais pourquoi le +1 et c'est quoi le trimright ?
merci d'avance


Re : fenetre active le 22/11/2007 10:43:31

japee
Membre Club
(Admin CS)
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'


Classé sous : fenetre, active, determiner

Participer à cet échange

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
SITE MARCHAND LOCATION...
Budget : 3 000€
SITE MARCHAND POUR HOTEL
Budget : 4 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS