[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
ON KEY                   Trap for Keypress

 ON KEY(n) GOSUB {linenum | linelabel}

    Establishes a subroutine to which QuickBASIC will branch if it detects
    a specified keypress. The trap must also be turned on by means of a
    KEY(n) ON statement.

           n    A numeric expression in the range 1 to 20.

     linenum    The first line of a keypress-handling subroutine. Setting
                linenum to 0 disables trapping.

   linelabel    A label identifying the first line of a keypress-handling
                routine.

   ----------------------------------------------------------------------

      Notes:    {linenum | linelabel} must be defined at the main program
                level.

                The following keys may be trapped:

                1-10     Function keys F1 through F10
                11       Cursor Up
                12       Cursor Left
                13       Cursor Right
                14       Cursor Down
                15-20    Keys defined via KEY n,
                         CHR$(KBflag)+CHR$(scancode)

                When the keypress is detected, QuickBASIC branches to the
                specified subroutine and temporarily suspends trapping (by
                means of an implicit KEY(n) STOP statement). Trapping
                automatically resumes when a RETURN from the handling
                subroutine is executed (unless the handler explicitly
                performs a KEY(n) OFF or KEY(n) STOP).

                The key that produced the trap may not be determined by
                means of INPUT$ or INKEY$.

                All event trapping is temporarily disabled when QuickBASIC
                is executing an error-handling routine (established via an
                ON ERROR statement).

                ON KEY may be used to trap Ctrl-Break and Ctrl-Alt-Del,
                thereby preventing a user from breaking out of a program.

                If the "Checking Between Statements" option is in effect,
                QB checks after each statement. If the "Event Trapping"
                option is selected, QB checks after each new program line.
                If neither option is selected, no trapping takes place.

                For command-line compilation, /v enables checking after
                each statement, and /w enables checking after each new
                line. If neither switch is used, no trapping takes place.

See Also: KEY(n)
This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson