WindowFromPoint

Category: API Functions

Date: 07-21-2011

Return to Index


 
'Sometimes you need to know which application (dialog) is at a point, most often
'associated with the position of the cursor. The WindowFromPoint function
'does the trick.
 
'Primary Code:
x = 500 : y = 500
hDlg = WindowFromPoint( x,y )
 
 
'Compilable Example:
'This examples uses a timer to repeatedly check which window is under the
'cursor. The cursor can be anywhere on the screen.
#Compile Exe
#Dim All
#Include "Win32API.inc"
Global hDlg As DWord
Function PBMain() As Long
   Dialog New Pixels, 0, "Test Code",300,300,200,200, %WS_OverlappedWindow To hDlg
   Control Add Label, hDlg, 100,"", 50,10,100,20
   SetTimer(hDlg, 200, 50, 0)    'creates the timer  200ms
   Dialog Show Modal hDlg Call DlgProc
End Function
CallBack Function DlgProc() As Long
   Select Case CB.Msg
      Case %WM_Timer
         Local P as Point, hTemp as DWord
         GetCursorPos P    'p.x and p.y are in screen coordinates
         hTemp = WindowFromPoint ( p.x, p.y )
         If hTemp = hDlg Then 
            Control Set Text hDlg, 100, "Over myapp"
         Else
            Control Set Text hDlg, 100, "NOT over myapp"
         End If
   End Select
End Function 
 
 
'gbs_00033
 


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm