Observed:
The form.Cls() is useful to cancel text or graphic operations.
But Cls() is implemented with window messages,
in this way a lockscreen=.T. it stops the elaboration of the messages,
and therefore Cls() is performed after LockScreen =.F.
with the result to cancel the new operations done on the VFP buffer.
Not badly.
- Run and move the mouse
- check unckeck
WITH CREATEOBJECT("form1")
.Show(1)
ENDWITH
DEFINE CLASS form1 AS form
ADD OBJECT Check1 AS CheckBox with;
Value = .F.;
, Caption = "in Lockscreen"
PROCEDURE MouseMove(a,b,x,y)
thisform.LockScreen = thisform.check1.Value
thisform.Cls
thisform.Circle(50,x,y)
thisform.Print("some text",x-30,y-30)
thisform.LockScreen = .F.
ENDPROC
ENDDEFINE