Con esta API podemos conocer la posición del cursor.
STORE 0 TO lnX, lnY
_GetCursorPos(@lnX,@lnY)
? lnX, lnY
PROCEDURE _GetCursorPos(tnX, tnY)
DECLARE SHORT GetCursorPos IN user32 STRING @ lpPoint
LOCAL lcBuffer
lcBuffer = REPLICATE(CHR(0),8)
GetCursorPos(@lcBuffer)
tnX = buf2dword(SUBSTR(lcBuffer,1,4))
tnY = buf2dword(SUBSTR(lcBuffer,5,4))
ENDPROC
FUNCTION buf2dword(tcBuffer)
RETURN ASC(SUBSTR(tcBuffer,1,1)) + ;
BITLSHIFT(ASC(SUBSTR(tcBuffer,2,1)), 8) +;
BITLSHIFT(ASC(SUBSTR(tcBuffer,3,1)),16) +;
BITLSHIFT(ASC(SUBSTR(tcBuffer,4,1)),24)
ENDFUNC
|