>I tried playing with NoDefault before with no success. Do you frequently use this particular trick to supress (fix ?) VFP default GUI behaviour ?
I feel, I should give you some explanation. Keypress event (and any other event) may have two parts: your own code (check Selstart in this case) and VFP internal code (move insertion point in this case). Your code fires first and internal code second, however your requirement is to check SelStart after insertion point moved (i.e. after internal code makes its job). Therefore, Dodefault() will do exactly this: moves insertion point, and then you get needed SelStart. However, if you leave things at this point, internal code will fire again and actually moves insertion point one more step (e.g. as result you may see that RightArrow will move Insertion point 2 characters to the right). So, NODEFAULT will prevent this extra step.
Edward Pikman
Independent Consultant