blockkeyboard
blockkeyboard
SUSPEND

The blockkeyboard statement temporarily suspends/resumes keyboard input.

Parameters

This statement has one parameter:

suspend – is a boolean value that specifies whether keyboard input is suspended.

Description

This statement temporarily suspends/resumes keyboard input. This code suspends keyboard input.

    blockkeyboard "yes"

This code resumes keyboard input.

    blockkeyboard "no"

If you ever suspend keyboard input, be sure to resume it! Otherwise you won’t be able to type into Panorama! (If this does happen, you can get the keyboard working again by bringing a procedure window to the front.

Panorama saves all of the keystrokes that are pressed while the keyboard is blocked. When the block is removed Panorama will process the keystrokes. However, this doesn’t happen until the procedure stops running. If you don’t want these keys to ever be processed, use the cleartypeahead statement, like this:

    blockkeyboard "no"
    cleartypeahead

The intended purpose of the blockkeyboard statement is to allow typeahead to work for dialogs that require complex setup, for example rearranging graphic objects before the keyboard input can be processed properly. To see an example of how this is done, view the source code for the FINDSELECTDIALOG statement.

See Also

- cleartypeahead -- clears any typed ahead characters that have been pressed while a procedure is running.
- rundialog -- uses a form as a template to display a modal dialog window. The statement supervises the operation of the dialog until it is closed.

History

Version | Status | Notes
10.2 | New | New in this version.