Message de rapport:
 

Re: [WDx] Comment récupérer le titre d'une fenêtre en second plan

Sujet: Re: [WDx] Comment récupérer le titre d'une fenêtre en second plan
par Anonyme sur 1/5/2005 19:19:49

Bonjour,

J'ai pu récupérer sur le site de Cyrille Beaussier le code suivant que j'ai adapté et qui me permet de récupérer la liste des fenêtres présentes en arrière de mon application.
Dans ce code la dernière fenêtre ayant eu le focus ( donc celle que je viens de capturer est toujours la 1ère de la liste à condition que j'élimine 2 noms de fenêtres, "M" et "DEFAULT IME"
Pensez-vous que cette solution est suffisante ou dois-je prendre une autre précaution ?

Cordialement


Lg, Ok sont des entiers
hWnd est un entier
lpString est une chaîne fixe sur 255
WNomLu est une chaîne
hWnd = AppelDLL32("User32", "GetWindow", Handle(), 2)
ListeSupprimeTout(Liste1)
WFenetreCapturee = ""
TANTQUE hWnd <> Handle()
Multitache()
Lg = AppelDLL32("User32", "GetWindowTextLengthA", hWnd)
Ok = AppelDLL32("User32", "GetWindowTextA", hWnd, &lpString, Lg + 1)
SI Ok ALORS
WNomLu = Gauche(lpString,Lg)
SI PAS Majuscule(WNomLu) = "M" ET PAS Majuscule(WNomLu) = "DEFAULT IME" ALORS
ListeAjoute(Liste1,WNomLu)
ListeSelectPlus(Liste1,1)
WFenetreCapturee = Liste1[Liste1]
SORTIR
FIN
FIN
hWnd = AppelDLL32("User32", "GetWindow", hWnd, 2)
SI hWnd = 0 ALORS
SORTIR
FIN
FIN
Info(WFenetreCapturee)

Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2