针对EDIT控件,键盘上各个主要键的KEY值是多少?(50分)

  • 主题发起人 主题发起人 biyesheng
  • 开始时间 开始时间
B

biyesheng

Unregistered / Unconfirmed
GUEST, unregistred user!
比如说回车是KEY=#13,那么空格是KEY=#?,DEL键是KEY=#?还有方向键,Ctrl+V
Ctrl+C,Ctrl+X等等都怎么表示?
 
0 ?/FONT> 32 [space] 64 @ 96 `
1 · 33 ! 65 A 97 a
2 · 34 " 66 B 98 b
3 · 35 # 67 C 99 c
4 · 36 $ 68 D 100 d
5 · 37 % 69 E 101 e
6 · 38 & 70 F 102 f
7 · 39 ' 71 G 103 g
8 * * 40 ( 72 H 104 h
9 * * 41 ) 73 I 105 i
10 * * 42 * 74 J 106 j
11 · 43 + 75 K 107 k
12 · 44 , 76 L 108 l
13 * * 45 - 77 M 109 m
14 · 46 . 78 N 110 n
15 · 47 / 79 O 111 o
16 · 48 0 80 P 112 p
17 · 49 1 81 Q 113 q
18 · 50 2 82 R 114 r
19 · 51 3 83 S 115 s
20 · 52 4 84 T 116 t
21 · 53 5 85 U 117 u
22 · 54 6 86 V 118 v
23 · 55 7 87 W 119 w
24 · 56 8 88 X 120 x
25 · 57 9 89 Y 121 y
26 · 58 : 90 Z 122 z
27 · 59 ; 91 [ 123 {
28 · 60 < 92 / 124 |
29 · 61 = 93 ] 125 }
30 · 62 > 94 ^ 126 ~
31 · 63 ? 95 _ 127 ·
 
那请问Ctrl+V,Ctrl+C,Ctrl+X等等都怎么表示?
 
不知楼主要这些键有何用处?

如只是为了在程序中判断,我想没有必要如此大动干戈。
只要用Delphi的Virtual key codes即可。
 
CTRL+A:#1 CTRL+B:#2 CTRL+C:#3 CTRL+D:#4 CTRL+E:#5 CTRL+F:#6 CTRL+G:#7
CTRL+H:#8 CTRL+I:#9 CTRL+J:#10 CTRL+K:#11 CTRL+L:#12 CR:#13 CTRL+N:#14
CTRL+O:#15 CTRL+P:#16 CTRL+Q:#17 CTRL+R:#18 CTRL+S:#19 CTRL+T:#20
CTRL+U:#21 CTRL+V:#22 CTRL+W:#23 CTRL+X:#24 CTRL+Y:#25 CTRL+Z:#26 ESC:#27
CTRL+/:#28 CTRL+]:#29 SHIFT+CTRL+-:#30 DEL:#127

是你要的吗?
 
to wxkabc
我是想控制EDIT里只能输入数字,别人告诉我用
if not (key in ['0'..'9','.']) then
key:=#0
但是EDIT却不能接收Ctrl+V,所以我想Ctrl+V对EDIT也有效,有什么其它的好办法吗?
请多多指教,谢谢。
 
综合上面的
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case Key of
'0'..'9': ; //对数字键响应
#8,#9,#37,#39,#46,#35,#36:; //对退格键、Tab键、左右箭头响应
#1,#3,#22,#24:;//对Ctrl C、V、A、X响应
#13:begin
key := #0;
perform(WM_NEXTDLGCTL,0,0);
end;
else
Key:=#0;
end;
end;
 

Similar threads

后退
顶部