INKEY( ) Function
Returns a number corresponding to the first mouse click or key press in the type-ahead buffer.
INKEY([nSeconds] [, cHideCursor])
Parameters
nSeconds
Specifies the number of seconds to wait for a keystroke. If you do not specify a value for nSeconds, INKEY( ) returns a value for a keystroke immediately. If nSeconds is 0, INKEY( ) waits indefinitely for a keystroke.cHideCursor
Shows or hides the cursor, or checks for a mouse click.The following table lists values for cHideCursor.
cHideCursor
Description
S
Show cursor.
H
Hide cursor.
M
Check for a mouse click.
E
Expand the keyboard macro if a keyboard macro is assigned to a key or key combination. To return successive values for each keystroke in a macro, execute INKEY( ) repeatedly with E included.
Note
If both S and H are included in cHideCursor, the latter character specified takes precedence. You can combine values for cHideCursor, for example, to check for a mouse click and show the cursor, include M and S. To check for a mouse click and hide the cursor, include H and M. INKEY( ) disregards characters other than S, H, M, and E in cHideCursor.
Return Value
Numeric. INKEY( ) returns 0 if a key has not been pressed. If several keys are present in the type-ahead buffer, INKEY( ) returns the value of the first key entered in the buffer. INKEY( ) also returns the following values according to certain conditions:
If M is included for cHideCursor, INKEY( ) returns the value 151.
If E is included, INKEY( ) returns a value corresponding to the first keystroke assigned to the keyboard macro. If you omit E, INKEY( ) returns the value for the key or key combination that triggers the keyboard macro.
For single keys and key combinations using the SHIFT, CTRL, and ALT keys, the following table lists the return values for INKEY( ). A dash (–) indicates that the key combination returns no value.
Key
Alone
SHIFT
CTRL
ALT
F1
28
84
94
104
F2
–1
85
95
105
F3
–2
86
96
106
F4
–3
87
97
107
F5
–4
88
98
108
F6
–5
89
99
109
F7
–6
90
100
110
F8
–7
91
101
111
F9
–8
92
102
112
F10
–9
93
103
113
F11
133
135
137
139
F12
134
136
138
140
1
49
33
–
120
2
50
64
–
121
3
51
35
–
122
4
52
36
–
123
5
53
37
–
124
6
54
94
–
125
7
55
38
–
126
8
56
42
–
127
9
57
40
–
128
0
48
41
–
19
a
97
65
1
30
b
98
66
2
48
c
99
67
3
46
d
100
68
4
32
e
101
69
5
18
f
102
70
6
33
g
103
71
7
34
h
104
72
127
35
I
105
73
9
23
j
106
74
10
36
k
107
75
11
37
l
108
76
12
38
m
109
77
13
50
n
110
78
14
49
o
111
79
15
24
p
112
80
16
25
q
113
81
17
16
r
114
82
18
19
s
115
83
19
31
t
116
84
20
20
u
117
85
21
22
v
118
86
22
47
w
119
87
23
17
x
120
88
24
45
y
121
89
25
21
z
122
90
26
44
INS
22
22
146
162
HOME
1
55
29
151
DEL
7
7
147
163
END
6
49
23
159
PAGE UP
18
57
31
153
PAGE DOWN
3
51
30
161
UP ARROW
5
56
141
152
DOWN ARROW
24
50
145
160
RIGHT ARROW
4
54
2
157
LEFT ARROW
19
52
26
155
ESC
27
–/27
–*/27
–*/1
ENTER
13
13
10
–/166
BACKSPACE
127
127
127
14
TAB
9
15
148/*
*
SPACEBAR
32
32
32/–
57
` or ~
96
126
41
- or _
45
95
= or +
61
43
13
[ or {
91
123
27
26
] or }
93
125
29
27
\ or |
92
124
28
43
; or :
59
58
39
' or "
39
34
40
, or <
44
60
51
. or >
46
62
52
/ or ?
47
63
53
* Keystroke reserved by Windows.