Je cherche à détecter les fenêtres (explorateur ou autre) ouvertes sur le bureau par rapport à des coordonnées X et Y.
En gros, si à une coord x/y il y a une fenêtre, le prog me renvoie :
- Oui il y a une fenêtre, voilà sa taille et sa position.
Avec ce code, j'obtiens le listing des applis ouvertes mais de toutes les applis ouvertes.
Code : Tout sélectionner
Procedure ListWindows(hwnd,Param)
If GetWindowLongPtr_(hwnd,#GWL_EXSTYLE) ! #WS_EX_TOOLWINDOW And GetWindowLongPtr_(hwnd,#GWL_STYLE) & #WS_VISIBLE
String$ = Space(250)
GetWindowText_(hwnd,String$,250)
If Not String$=""
AddGadgetItem(1,-1,String$ + " ouvert",0,0)
EndIf
EndIf
ProcedureReturn #True
EndProcedure
If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
ListViewGadget(1,10,10,480,230,0)
EnumChildWindows_(FindWindow_("ToolbarWindow32",#Null),@ListWindows(),0)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
J'ai testé pas mal de codes de WinApi et autre mais je ne trouve pas ça. Me semblait bien que j'en avait un qui affichait les infos d'une fenêtre au survol de la souris mais j'arrive pas à remettre la mains dessus.
Si vous avez ça dans vos besaces.
Merci