>LPARAMETERS nKeyCode, nShiftAltCtrl >if IsAlpha(Chr(nKeyCode)) && and nKeyCode=>0 && Remove the first && to see the bug > DoDefault(Asc(Upper(Chr(nKeyCode)))) > NoDefault >EndIfJust tested it. No matter where you put NODEFAULT, BUT you MUST pass the second parameter to DODEFAULT(). So it is not a VFP bug it is yours :-)