*Form.load && DLL, lib declarations declare short GetCaretPos in win32API string @ lpPoint declare short ClientToScreen in win32Api integer hWnd, string @ lpPoint declare SetCursorPos in win32API integer X, integer Y set library to home()+'foxtools.fll' additive *Where you need the follower - keypress, interactivechange etc Local lpPos, lnWHND, lnX,lnY,lnScreenX,lnScreenY Store 0 to lnX,lnY,lnScreenX,lnScreenY lpPos = space(8) lnHWND = _WhToHwnd(_WOnTop()) GetCaretPos(@lpPos) && Get text insertion point coordinates - in terms of form For ix=1 to 8 && Decode 2 long values (X and Y) If ix<5 lnX = lnX + asc(substr(lpPos,ix))*256^(ix-1) Else lnY = lnY + asc(substr(lpPos,ix))*256^(ix-5) Endif Endfor ClientToScreen(lnHWND, @ lpPos) && Convert client coords to screen coords For ix=1 to 8 If ix<5 lnScreenX = lnScreenX + asc(substr(lpPos,ix))*256^(ix-1) Else lnScreenY = lnScreenY + asc(substr(lpPos,ix))*256^(ix-5) Endif Endfor SetCursorPos(lnScreenX,lnScreenY) && Set mouse pos to coords Set message to 'CurX:'+trans(lnX)+' CurY:'+trans(lnY) && Line-Col in statbarCetin