LOCAL oForm As MyForm oForm = CREATEOBJECT('MyForm') oForm.Visible=.T. READ EVENTS DEFINE CLASS MyForm As Form PROCEDURE Init = BINDEVENT(_screen, 'Resize', THIS, 'OnScreenResize') PROCEDURE OnScreenResize DO CASE CASE _screen.WindowState= 1 = MESSAGEBOX('Minimized!') CASE _screen.WindowState= 2 = MESSAGEBOX('Maximized!') ENDCASE PROCEDURE Destroy = UNBINDEVENTS(_screen) CLEAR EVENTS ENDDEFINETracking WM_SIZE messages for _screen.HWnd is another option.