1. 城镇大全网
  2. 综合百科

怎么进入编程界面(9.键盘鼠标和文件编程)

1.键盘编程1.1键盘

在Windows下,键盘的按键事件如下:

上述击键事件传入的参数可以用来判断用户的击键行为:

OnKeyDown 与 OnKeyUp

参数是用户Key的键值(字值),表示Windows中的虚拟键码。

OnKeyPress

参数是一个Char值,它是一个ASCII字符。

虚拟键码:

常量名称

十六进制值

十进制值

对应的键

VK按钮

01

1

鼠标左键

VK按钮

02

2

鼠标右键

VK-取消

03

3

Ctrl Break(通常不需要处理)

VK·姆巴顿

04

4

鼠标中键(三键鼠标)

VK_BACK

08

8

退格键

VK_TAB

09

9

Tab键

VK _晴

0C

[h/]12

清除键(当Num Lock关闭时,数字键盘5)

VK _返回

0D

[h/]13

Enter键

VK_SHIFT

10

[h/]16

Shift键

VK _控制

11

17

Ctrl键

VK _菜单

[h/]12

18

Alt键

VK _暂停

[h/]13

19

暂停键

VK首都

14

20

大写锁定键

VK _逃亡

[h/]1B

[h/]27

Ese密钥

VK空间

20

[h/]32

空格键

VK _先验

21

33

翻页键

VK _下一个

[h/]22

34

PageDomw键

VK_END

[h/]23

[h/]35

结束键

VK _首页

[h/]24

[h/]36

Home键

VK _左

[h/]25

[h/]37

左箭头键(←)

VK_UP

[h/]26

[h/]38

向上箭头键(↑)

VK _右

[h/]27

[h/]39

右箭头键(→)

VK _唐

[h/]28

40

向下箭头键(↓)

VK _选择

[h/]29

41

选择键

VK _打印

[h/]2A

42

VK _执行

[h/]2B

43

执行键

VK _快照

2C

[h/]44

打印屏幕键(屏幕截图)

VK _插入

[h/]2D

45

Ins键(当Num Lock关闭时,数字键盘为0)

VK _删除

[h/]2E

[h/]46

Del键(关闭Num Lock的数字键盘。)

VK _救命

[h/]2F

[h/]47

帮助键

VK_0

[h/]30

[h/]48

0键

VK_1

31

[h/]49

1键

VK_2

[h/]32

[h/]50

2键

VK_3

33

51

3键

VK_4

34

52

4键

VK_5

[h/]35

53

5键

VK_6

[h/]36

[h/]54

6键

VK_7

[h/]37

[h/]55

7键

VK_8

[h/]38

[h/]56

8键

VK_9

[h/]39

[h/]57

9键

VK

41

65

一把钥匙

VK

42

66

B键

VK

43

67

C键

VK

[h/]44

68

D键

VK

45

69

E键

VK_F

[h/]46

[h/]70

F键

VK_G

[h/]47

[h/]71

G键

VK_H

[h/]48

[h/]72

H键

VK_I

[h/]49

[h/]73

I键

VK J

[h/]4A

74

J键

VK_K

4B

[h/]75

K键

VK_L

4C

76

L键

VK

[h/]4D

77

M键

VK

[h/]4E

78

N键

VK

4F

79

O键

VK_P

[h/]50

[h/]80

P键

VK_Q

51

81

Q键

VK

52

82

R键

[h/]VK

53

83

S键

VK_T

[h/]54

84

T键

VK大学

[h/]55

85

U键

VK五世

[h/]56

[h/]86

V键

VK_W

[h/]57

87

W键

VK X

[h/]58

88

X键

VK

[h/]59

89

Y键

VK

5A

90

Z键

VK_NUMPAD0

60

96

数字键0键

VK_NUMPAD1

61

97

数字键1

VK_NUMPAD2

62

98

数字键2

VK_NUMPAD3

62

99

数字键3键

VK _数字4

64

100

数字键4键

VK_NUMPAD5

65

[h/]101

数字键5键

VK_NUMPAD6

66

102

数字键6键

VK_NUMPAD7

67

[h/]103

数字键7键

VK_NUMPAD8

68

[h/]104

数字键8键

VK_NUMPAD9

69

105

数字键9键

VK _乘法

[h/]6A

[h/]106

数字键盘上的*键

VK _地址

6B

[h/]107

数字键盘上的 键

VK _分隔符

6C

108

分隔符键

VK _减法

[h/]6D

[h/]109

-数字键盘上的键

VK _十进制

[h/]6E

[h/]110

的。数字键盘上的键

VK _除

6F

[h/]111

数字键盘上的/键

VK_F1

[h/]70

112

F1键

VK F2

[h/]71

113

F2键

VK_F3

[h/]72

114

F3键

F4 VK

[h/]73

115

F4键

VK_F5

74

116

F5键

F6 VK

[h/]75

117

F6键

F7 VK

76

118

F7键

F8 VK

77

119

F8键

VK_F9

78

120

F9键

F10 VK

79

121

F10键

VK_F11

7A

122

F11键

VK_F12

7B

123

F12键

VK _努姆洛克

90

144

数字锁密钥

VK _卷轴

91

145

ScrollLock键

VK卢温

91

左win键

VK莱茵

92

右win键

VK应用程序

93

右Ctrl左键,点击相当于点击鼠标右键,会弹出快捷菜单。

] 186

;(分号)

187

= key

[h/]188

,键(逗号)

[h/]189

-键(减号)

190

。关键点(句号)

191

/key

192

`键(在Esc键下)

[h/]219

[键

220

key

[h/]221

]键

[h/]222

& # 39;钥匙(引号)

1.2键盘事件OnKeyDown

按下键盘上的任何键都会触发此事件。字母键、数字键、功能键、Ctrl、Shift或Alt等键都会触发此事件。

OnKeyPress

按下键盘上的字符键会触发该事件,但单独按下功能键、Ctrl、Shift或Alt不会触发该事件。

OnKeyUp

当键盘上的任意键被按下并释放时,将触发该事件。字母键、数字键、功能键、Ctrl、Shift或Alt等键都会触发此事件。

TShiftState

在OnKeyDown、OnKeyUp、OnMouseDown、OnMouseUp等事件中,有一个类型为TShiftState的变量Shift,它的值用来判断键盘上的键被按下时Shift、Alt、Ctrl键的状态,或者是按下鼠标的状态。

tshiftstate类型的定义:

Type TShiftState = set of(ss shift,ssAlt,ssCtrl,ssLeft,ssRight,ssMiddle,ss double);

1.3键盘编程示例

例1:按键时改变窗体的颜色。

var form color:t color; 过程TForm1。FormKeyDown(发送方:TObjectvar键:Word Shift:TShiftState); begin form color:= form 1。颜色; Form1。颜色:= clGreen end; 过程TForm1。FormKeyUp(发件人:TObjectvar键:Wordshift:TShiftState); 开始 表格1。color:= form color; end;

例2:模拟按下键盘的一个键。

本例需要使用Delphi WinAPI的消息函数PostMessage,界面如下:

示例代码:

过程TForm1。Button1Click(发件人:to object); begin //a PostMessage(edit 1。Handle,WM_KEYDOWN,65,0); end; 过程TForm1。Button2Click(发送方:to object); begin //b PostMessage(edit 1。Handle,WM_KEYDOWN,66,0); end; 过程TForm1。Button3Click(发送方:to object); begin //c PostMessage(edit 1。Handle,WM_KEYDOWN,67,0); end;

例3:在屏幕上输出按键操作的结果,包括Shift、Alt、Ctrl键。界面如下:

示例代码:

过程TForm1。FormKeyDown(发送方:TObjectvar键:Word Shift:TShiftState); 开始 标签1。标题:= & # 39;'; if Shift & gt;= [ssShift]然后 Label1。标题:= & # 39;Shift & # 39; if Shift & gt;= [ssAlt]然后 Label1。标题:= & # 39;Alt & # 39; if Shift & gt;= [ssCtrl]然后 Label1。标题:= & # 39;Ctrl & # 39; Label1。标题:= Label1。caption inttostr(key); end;

,

猜你喜欢:综合百科

综合百科怎么进入编程界面(9.键盘鼠标和文件编程)

转载请注明:原文链接 | http://www.nnxc.com.cn/10043317293.html