DECLARE SHORT GetAsyncKeyState IN USER32.DLL ; INTEGER vKey #define VK_SHIFT 0x10 #define VK_F2 0x71 IF BITTEST( GetAsyncKeyState( VK_SHIFT ), 31 ) = .T. ; AND BITTEST( GetAsyncKeyState( VK_F2 ), 31 ) = .T. ... ENDIF>I use the Keypress Event to detect the keystrokes Shift-F2 through Shift-F7. Because these keys have identical values to the keys Shift-U through Shift-Z (85-90) I cannot tell the difference. The effect of this is that on some forms when the operator presses Shift-U (for example) nothing happens.