From QB64 Wiki
Revision as of 17:16, 26 October 2011 by imported>Clippy
Jump to navigation Jump to search

The ON KEY(n) statement defines a line number or label to go to when a specified key is pressed.


ON KEY (n) {GOSUB {linelabel|linenumber}|SUBprocedure}


  • Predefined key numbers are shown below, where n is the number that represents that key.
1 - 10 for F1 - F10 function keys respectively
11, 12, 13 and 14 for UP, LEFT, RIGHT and DOWN numberpad arrows respectively.
15-25(29 in QB64) for user-defined keys. See: KEY n, Keyboard scancodes
30 - 31 for F11 - F12 function keys
  • GOSUB with a linelabel or linenumber or a SUB procedure can be used in QB64. Don't use CALL!

Example 1: Using ON KEY with GOSUB to execute code.

KEY(1) ON ON KEY(1) GOSUB trap PRINT "Press F1 to quit!" DO:LOOP 'never ending loop trap: PRINT "You pressed F1 like I told you to :)" END RETURN

Example 2: Using ON KEY with a SUB procedure to do something.

CLS ON KEY(10) Control 'action of user defined key press KEY(10) ON 'turn ON event trapping for key combination PRINT "Press F10 key, escape quits!" DO: SLEEP count = count + 1 PRINT count; IF INKEY$ = CHR$(27) THEN END 'escape key exit LOOP SUB Control PRINT "F10 key pressed!"; BEEP END SUB

See also:

Keyword Reference - Alphabetical
Keyword Reference - By Usage
Main Wiki Page