LOCAL oForm
oForm = CREATEOBJECT("Tform")
oForm.Visible=.T.
READ EVENTS
DEFINE CLASS Tform As Form
Caption="Left-click inside the form and drag"
Autocenter=.T.
PROCEDURE Init
THIS.declare
PROCEDURE Destroy
CLEAR EVENTS
PROCEDURE MouseDown
LPARAMETERS nButton, nShift, nXCoord, nYCoord
#DEFINE WM_NULL 0
#DEFINE WM_SYSCOMMAND 0x0112
#DEFINE WM_LBUTTONUP 0x0202
#DEFINE MOUSE_MOVE 0xf012
IF nButton = 1
LOCAL hWindow
hWindow = THIS.HWnd && GetFocus()
= ReleaseCapture()
= SendMessage(hWindow, WM_SYSCOMMAND,;
MOUSE_MOVE, WM_NULL)
= SendMessage(hWindow, WM_LBUTTONUP, 0, 0)
ENDIF
PROCEDURE declare
DECLARE INTEGER ReleaseCapture IN user32
DECLARE INTEGER GetFocus IN user32
DECLARE INTEGER SendMessage IN user32;
INTEGER hWindow, INTEGER Msg,;
INTEGER wParam, INTEGER lParam
ENDDEFINE
|