ich habe mir folgendes Schnipsel zusammengebastelt und mich gefragt, warum WindowFromPoint_() immer 0 zurück gibt. Mache ich was falsch?
Normalerweise sollte ich das Window-Handle erhalten, das sich unter der Maus befindet. So zumindest die Theorie. Und am Ende will ich die Dimension des darunter liegenden Fensters erfassen. Das mache ich dan mit GetWindowRect_(). Aber soweit komme ich ja gar nicht erst.
Kann mir jemand helfen?
Code: Alles auswählen
Structure MSLLHOOKSTRUCT
pt.POINT
mouseData.l
flags.l
time.l
*dwExtraInfo
EndStructure
Procedure.i MouseHook(nCode, wParam, *p.MSLLHOOKSTRUCT)
If nCode = #HC_ACTION
Select wParam
Case #WM_MOUSEMOVE
;Debug "" + *p\pt\x + "," + *p\pt\y
;Case #WM_LBUTTONDBLCLK
hwnd.l = WindowFromPoint_(*p\pt)
Debug "" + *p\pt\x + "," + *p\pt\y + ~"\t" + hwnd
EndSelect
EndIf
ProcedureReturn CallNextHookEx_(0, nCode, wParam, *p)
EndProcedure
SetWindowsHookEx_(#WH_MOUSE_LL, @MouseHook(), GetModuleHandle_(0), 0)
OpenWindow(0, 0, 0, 400, 300, "test")
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow