Stephen,
I didn't quite understand which of my questions you were responding to.
Did you try adding a command button with the lockscreen=.f. and refresh?
One more thing..
Something that has got me a few times and sounds similar is to do with Setfocus()
If you do a setfocus in the middle of a method, VFP seems to go directly to that object - without running the remainder of the code after the SF command.
I noticed there is a Refresh after a setfocus in your add button... try swapping them over
HTH
Will Jones