For a key-press event, a virtual key code is provided by
get-key-code. For a key-release event,
get-key-code reports 'release, and a virtual key code is provided by
get-key-release-code.
See also Mouse and Keyboard Events.
See the corresponding get- and set-
methods for information about key-code, shift-down,
control-down, meta-down, alt-down,
x, y, time-stamp, caps-down.
The release key code, as returned by get-key-release-code, is initialized to 'press.
Returns
#t if the Option (Mac OS X) key was down for
the event. When the Alt key is pressed in Windows, it is reported as
a Meta press (see
get-meta-down).
Returns #t if the Caps Lock key was on for the event.
Returns #t if the Control key was down for the event.
On Mac OS X, if a control-key press is combined with a mouse button
click, the event is reported as a right-button click and
get-control-down for the event reports #f.
Gets the virtual key code for the key event. The virtual key code is
either a character or a special key symbol, one of the following:
'start
'cancel
'clear
'shift
'control
'menu
'pause
'capital
'prior
'next
'end
'home
'left
'up
'right
'down
'escape
'select
'print
'execute
'snapshot
'insert
'help
'numpad0
'numpad1
'numpad2
'numpad3
'numpad4
'numpad5
'numpad6
'numpad7
'numpad8
'numpad9
'numpad-enter
'multiply
'add
'separator
'subtract
'decimal
'divide
'f1
'f2
'f3
'f4
'f5
'f6
'f7
'f8
'f9
'f10
'f11
'f12
'f13
'f14
'f15
'f16
'f17
'f18
'f19
'f20
'f21
'f22
'f23
'f24
'numlock
'scroll
'wheel-up — mouse wheel up one notch
'wheel-down — mouse wheel down one notch
'wheel-left — mouse wheel left one notch
'wheel-right — mouse wheel right one notch
'release — indicates a key-release event
'press — indicates a key-press event; usually only from get-key-release-code
The special key symbols attempt to capture useful keys that have no
standard ASCII representation. A few keys have standard
representations that are not obvious:
#\space — the space bar
#\return — the Enter or Return key (on all
platforms), but not necessarily the Enter key near the numpad
(which is reported as 'numpad-enter if the platform
distinguishes the two Enter keys)
#\tab — the tab key
#\backspace — the backspace key
#\rubout — the delete key
If a suitable special key symbol or ASCII representation is not
available, #\nul (the NUL character) is reported.
A 'wheel-up, 'wheel-down, 'wheel-left, or
'wheel-right event may be sent to a window other than the
one with the keyboard focus, because some platforms generate wheel
events based on the location of the mouse pointer instead of the
keyboard focus.
On Windows, when the Control key is pressed without Alt, the key
code for ASCII characters is downcased, roughly cancelling the effect
of the Shift key. On Mac OS X, the key code is computed without
Caps Lock effects when the Control or Command key is pressed; in the
case of Control, Caps Lock is used normally if special handling is
disabled for the Control key via special-control-key. On
Unix, the key code is computed with Caps Lock effects when the Control
key is pressed without Alt.
See also get-other-shift-key-code.
Gets the virtual key code for a key-release event; the result is
'press for a key-press event. See
get-key-code for the list of virtual key codes.
Returns #t if the Meta (Unix), Alt (Windows), or Command (Mac OS
X) key was down for the event.
Since keyboard mappings vary, it is sometimes useful in key mappings
for a program to know the result that the keyboard would have
produced for an event if the Shift key had been toggled
differently. The
get-other-shift-key-code
produces that other mapping, returning
#f if the alternate
mapping is unavailable, otherwise returning the same kind of result
as
get-key-code.
The get-other-altgr-key-code method provides the
same information with respect to the AltGr key (i.e., Alt combined
with Control) on Windows and Unix, or the Option key on Mac OS
X. The get-other-shift-altgr-key-code method
reports a mapping for in tha case that both Shift and AltGr/Option
were different from the actual event.
The get-other-shift-key-code, get-other-altgr-key-code, and get-other-shift-altgr-key-code results all report key mappings where
Caps Lock is off, independent of whether Caps Lock was on for the
actual event. The get-other-caps-key-code method
reports a mapping for in that case that the Caps Lock state was
treated opposite as for the get-key-code
result. (Caps Lock normally has either no effect or the same effect as
Shift, so further combinations involving Caps Lock and other modifier
keys would not normally produce further alternatives.)
Alternate mappings are not available for all events. On Windows,
alternate mappings are reported when they produce ASCII letters,
ASCII digits, and ASCII symbols. On Mac OS X, alternate mappings are
available only when the Command key is pressed. On Unix, alternate
mappings are usually available.
Returns #t if the Shift key was down for the event.
Returns the x-position of the mouse at the time of the event, in the
target’s window’s (client-area) coordinate system.
Returns the y-position of the mouse at the time of the event in the
target’s window’s (client-area) coordinate system.
Sets whether the Option (Mac OS X) key was down for the event. When
the Alt key is pressed in Windows, it is reported as a Meta press
(see
set-meta-down).
Sets whether the Caps Lock key was on for the event.
Sets whether the Control key was down for the event.
On Mac OS X, if a control-key press is combined with a mouse button
click, the event is reported as a right-button click and
get-control-down for the event reports
#f.
Sets the virtual key code for the event, either a character or one of
the special symbols listed with
get-key-code.
Sets whether the Meta (Unix), Alt (Windows), or Command (Mac OS X) key
was down for the event.
Sets whether the Shift key was down for the event.
Sets the x-position of the mouse at the time of the event in the
target’s window’s (client-area) coordinate system.
Sets the y-position of the mouse at the time of the event in the
target’s window’s (client-area) coordinate system.