9。键盘鼠标和文件编程1。键盘编程
1.键盘编程1.1键盘
在 Windows 下,键盘的按键事件如下图:
以上按键事件传入的参数可以用来判断用户的按键行为: OnKeyDown 与 OnKeyUp
参数为用户按键的 Key 值(word值),代表 Windows 中的 Virtual Key Code。 OnKeyPress
参数为一个 Char 值,是一个 ASCII 字符。
Virtual Key Code:
常数名称
十六进制值
十进制值
对应按键
VK_LBUTTON
01
1
鼠标的左键
VK_RBUTTON
02
2
鼠标的右键
VK-CANCEL
03
3
Ctrl Break(通常不需要处理)
VK_MBUTTON
04
4
鼠标的中键(三按键鼠标)
VK_BACK
08
8
Backspace键
VK_TAB
09
9
Tab键
VK_CLEAR
0C
12
Clear键(Num Lock关闭时的数字键盘5)
VK_RETURN
0D
13
Enter键
VK_SHIFT
10
16
Shift键
VK_CONTROL
11
17
Ctrl键
VK_MENU
12
18
Alt键
VK_PAUSE
13
19
Pause键
VK_CAPITAL
14
20
CapsLock键
VK_ESCAPE
1B
27
Ese键
VK_SPACE
20
32
Spacebar键
VK_PRIOR
21
33
PageUp键
VK_NEXT
22
34
PageDomw键
VK_END
23
35
End键
VK_HOME
24
36
Home键
VK_LEFT
25
37
LEFTARROW键( )
VK_UP
26
38
UPARROW键( )
VK_RIGHT
27
39
RIGHTARROW键( )
VK_DOWN
28
40
DOWNARROW键( )
VK_Select
29
41
Select键
VK_PRINT
2A
42
VK_EXECUTE
2B
43
EXECUTE键
VK_SNAPSHOT
2C
44
Print Screen键(抓屏)
VK_Insert
2D
45
Ins键(Num Lock关闭时的数字键盘0)
VK_Delete
2E
46
Del键(Num Lock关闭时的数字键盘.)
VK_HELP
2F
47
Help键
VK_0
30
48
0键
VK_1
31
49
1键
VK_2
32
50
2键
VK_3
33
51
3键
VK_4
34
52
4键
VK_5
35
53
5键
VK_6
36
54
6键
VK_7
37
55
7键
VK_8
38
56
8键
VK_9
39
57
9键
VK_A
41
65
A键
VK_B
42
66
B键
VK_C
43
67
C键
VK_D
44
68
D键
VK_E
45
69
E键
VK_F
46
70
F键
VK_G
47
71
G键
VK_H
48
72
H键
VK_I
49
73
I键
VK_J
4A
74
J键
VK_K
4B
75
K键
VK_L
4C
76
L键
VK_M
4D
77
M键
VK_N
4E
78
N键
VK_O
4F
79
O键
VK_P
50
80
P键
VK_Q
51
81
Q键
VK_R
52
82
R键
VK_S
53
83
S键
VK_T
54
84
T键
VK_U
55
85
U键
VK_V
56
86
V键
VK_W
57
87
W键
VK_X
58
88
X键
VK_Y
59
89
Y键
VK_Z
5A
90
Z键
VK_NUMPAD0
60
96
数字键0键
VK_NUMPAD1
61
97
数字键1键
VK_NUMPAD2
62
98
数字键2键
VK_NUMPAD3
62
99
数字键3键
VK_NUMPAD4
64
100
数字键4键
VK_NUMPAD5
65
101
数字键5键
VK_NUMPAD6
66
102
数字键6键
VK_NUMPAD7
67
103
数字键7键
VK_NUMPAD8
68
104
数字键8键
VK_NUMPAD9
69
105
数字键9键
VK_MULTIPLY
6A
106
数字键盘上的*键
VK_ADD
6B
107
数字键盘上的 键
VK_SEPARATOR
6C
108
Separator键
VK_SUBTRACT
6D
109
数字键盘上的-键
VK_DECIMAL
6E
110
数字键盘上的.键
VK_DIVIDE
6F
111
数字键盘上的/键
VK_F1
70
112
F1键
VK_F2
71
113
F2键
VK_F3
72
114
F3键
VK_F4
73
115
F4键
VK_F5
74
116
F5键
VK_F6
75
117
F6键
VK_F7
76
118
F7键
VK_F8
77
119
F8键
VK_F9
78
120
F9键
VK_F10
79
121
F10键
VK_F11
7A
122
F11键
VK_F12
7B
123
F12键
VK_NUMLOCK
90
144
NumLock键
VK_SCROLL
91
145
ScrollLock键
VK_LWIN
91
左win键
VK_RWIN
92
右win键
VK_APPS
93
右Ctrl左边键,点击相当于点击鼠标右键,会弹出快捷菜单
186
;(分号)
187
=键
188
,键(逗号)
189
-键(减号)
190
.键(句号)
191
/键
192
`键(Esc下面)
219
[键
220
键
221
]键
222
"键(引号) 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 (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble); 1.3键盘编程示例
示例一:在按键过程中让窗体颜色发生变化。 var FormColor: TColor; procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin FormColor := Form1.Color; Form1.Color := clGreen; end; procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); begin Form1.Color := FormColor; end;
示例二:模拟按下键盘的某个键。
在该例中,需要使用 Delphi WinAPI 消息函数 PostMessage,界面如下:
示例代码: procedure TForm1.Button1Click(Sender: TObject); begin // a PostMessage(Edit1.Handle, WM_KEYDOWN, 65, 0); end; procedure TForm1.Button2Click(Sender: TObject); begin // b PostMessage(Edit1.Handle, WM_KEYDOWN, 66, 0); end; procedure TForm1.Button3Click(Sender: TObject); begin // c PostMessage(Edit1.Handle, WM_KEYDOWN, 67, 0); end;
示例三:在屏幕上输出按键操作的结果,包括:Shift、Alt和Ctrl键。界面如下:
示例代码: procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin Label1.Caption := ""; if Shift >= [ssShift] then Label1.Caption := "Shift + "; if Shift >= [ssAlt] then Label1.Caption := "Alt + "; if Shift >= [ssCtrl] then Label1.Caption := "Ctrl + "; Label1.Caption := Label1.Caption + inttostr(key); end;
奔驰G级军用版官图发布梦回太阳的后裔日前,奔驰正式发布了G级军用版的新车官图。也不愧是军用版,从图片中就能感受到新车的霸气和粗犷。外观来看,新车延续了经典的方正轮廓,不过细节上进行了诸多军用化打造。比如配有大灯防护罩
新款斯柯达柯珞克或将于10月份内上市近日,我们从相关渠道获悉,新款斯柯达柯珞克或将于10月份内上市。作为年度改款车型,新车将对外观等方面进行优化调整。外观方面,新车前包围将有不同风格的包围套件,车身侧面也将增加新的侧
百公里加速5。6秒领克09将于10月20日上市日前,我们从领克官方了解到,领克09将于10月20日领克品牌5周年盛典中同步上市。此前新车已开启预售,其中领克09MHEV车型前期推出3款车型,预售价格27万32。5万元领克09P
1。1米中控屏6。6秒破百福特EVOS预售22。78万元起近5米的车身和近3米的轴距1。1米4K超广域巨幅屏18项智能驾驶辅助系统卧龙苏醒迎宾感应系统全新一代SYNC2。0智行互联系统3年免费基础保养0首付购车方案全车超过95的模块支持空
骑行路上第一次事故下班回家,天色已晚停在路边来碗羊汤烩面越是骑得久了越是有点佛系了,16公里的路程平均下来时速也就20左右。真的没想过会出事故。经过我住在北五环,公司在北三环,整个行程就是沿着一条国
续费88会员的注意了首先我觉得88会员是挺值的。然而为什么发这样的标题,是因为我的会员绑了别人的手机号。导致现在的权益很混乱。相信看到这里,很多羊毛党都懂了,有同样经历的可以互相安慰下不懂也没关系,我
写个脚本把随手记的帐单导出来背景本人使用随手记记帐半个多月了,今天看到appstore里面懒猫记帐pro限免,本着产品体验的想法安装试了试,确实很简洁。于是乎想把迁移到懒猫上来。这时候摆在面前有一道难题数据迁
我的锻炼一一慢跑2021年8月18日,星期二,晴。今天晚8点多和弟弟妹妹从老妈家出来,妹妹问我哥,你还去公园锻炼不?我今天拿着玉米没地方放,就不去了。因为我们各自家的方向不一致,所以我骑上电动车就
realme真我GT大师探索版首发评测久违的胶片味道回来了其实我们可以回到过去先想一想,realme的大师版旗舰手机的表现很猛,卖的很好,而且设计确实是够有独树一格的感觉。设计师深泽直人的设计理念就是用最少的元素来展示产品的全部功能。这次
物价不断上涨,CPI同比上涨3。0,你感觉到通货膨胀了吗今年以来,我们先是经历了水果价格大幅上涨,接着面临蔬菜价格大幅上涨,等到水果和蔬菜价格有所回落,本以为物价回归,孰料猪肉价格又起飞了,二师兄价格飞上了天,令大家望而却步,猪肉是国内
美味潜江小龙虾小龙虾是潜江的特色产业,更是富民产业。突如其来的疫情给小龙虾产业带来不少困难,涉及饲养管理运输销售收储加工等各个方面。当地纪检监察机关主动作为,督促相关部门一手抓疫情防控一手抓复工
河北5G应用典型故事5G智慧钢铁,让设备点检全程可追踪打开手持5G点检终端设备,扫描点位二维码,激活点检任务,河钢唐钢新区点检员孙远成,开始了一天的设备点检工作。4月29日上午10时40分许,当孙远成到达厂区长材部棒材点检作业区时,发
全球迄今五大极端热浪出炉文徐锐近日,一项发表于科学进展的研究确认了全球有记录以来的五大极端热浪天气,它们远比去年北美西部的致命热浪事件更为严重。这五大热浪分别发生在1985年的巴西南部1998年的东南亚2
加拿大华人企业领导创立的生物药企获逾500万加元联邦资金支持中新网多伦多5月13日电加拿大一间由华人企业参与领导创立的生物制药科技公司近日获加拿大联邦政府创新基金近540万加元投资,以进行生物制药和新型健康产品的研发和生产。加拿大草原经济发
元宇宙与语文教育的变革元宇宙的技术本质上是现有互联网云计算数字孪生大数据区块链人工智能等技术的综合集成。利用这些技术,构造出一个虚实融合相生的新世界,就是元宇宙。它试图打通波普尔所说的三个世界中物理世界
科技赋能专业驱动兴业银行推出特殊资产估值模型近期,兴业银行联合旗下金融科技子公司兴业数金研发的针对特殊资产领域的债权估值定价智能工具(下称估值模型)正在加快全行推广应用。该模型以押品分析为基础,延伸至债权估值研究,同时结合时
4月车市失血,特斯拉销量暴跌超9成!元气何时恢复?中新经纬5月13日电(牛朝阁)受缺芯少锂疫情反弹影响,4月汽车市场行情难言乐观。乘联会数据显示,4月份乘用车市场零售达到104。2万辆,同比下降35。5,环比下降34。0,4月零售
三星妥协了?顶尖旗舰为中国市场降价2000,12GB256GB配置拉满如果说到三星的手机产品,相信大家都很熟悉了,毕竟即便是没有用过三星的手机,也听说过三星手机,而且聊到Android手机产品就肯定是离不开三星的,为什么这么说呢?因为即便是现在其他家
字节跳动推出聆镜直播一体机售价高达15800元字节跳动通过抖音短视频直播获得了巨大成功,由此也开始了进行相关硬件产品的研发工作,最近他们就正式推出了一款名为聆镜直播一体机的硬件产品,并为之配套了一个名为聆镜的APP应用。据了解
小米12超大杯曝光,徕卡认证影像坐实,硬件全线拉满小米12系列今年在行业内赢得了很多消费者的认可,精致细腻的外观设计,强悍的硬件配置,几乎满足了所有消费者对于旗舰机的需求,但如果要说真的定位高端,那还是稍微的逊色一筹,并没有太多别
登顶大家电热度Top1,这款家电为啥这么强?大家电热度Top1,美的10kg滚筒洗衣机全自动热泵烘干机套装大促开启!单独购买5位数,今日到手价不高于6299元,限时下单还送200元京豆,再赠送折叠洗衣机,堆叠式安装再送一体式
为什么现在用户不愿意换手机了?根据近一两年我个人体验近百部手机的经验说一下我个人的看法1其实两三年前安卓手机都已经不卡了至少用个一两年后也不会很卡这是安卓阵营两三年前的巨大进步。25g出现以后有人说可以不用但不