All articles(网络文学目录) All Pictures(图片目录) All Softwares(软件目录)

 
delphi常用的键盘事件处理方法-实例

Writer: aaa Article type: Programming skills(编程技巧) Time: 2014/7/19 0:11:19 Browse times: 366 Comment times: 0

delphi常用的键盘事件处理方法-实例


Head photo

Go homepage
Upload pictures
Write articles

delphi常用的键盘事件处理方法|实例|技巧

图形用户界面之所以能为广大用户所喜爱,并最终成为事实上的标准,最重要的一点在于它可以用简便、灵活的方式来接受用户的命令。用户在图形界面中输入的大部分命令,都是对界面特定元素的具体事件来响应并处理的。键盘和鼠标早已成为Windows 环境中的标准输入输出设备,所以一个优秀的应用程序在键盘响应和鼠标响应方面也一定要非常完美。
键盘事件
键盘事件,就是在图形界面中利用键盘实现命令的输入。下面介绍常用的键盘触发的事件。
1.OnKeyDown 事件
当按下键盘上的任意一个键,如字母键、数字键、功能键(F1~F12)、Ctrl 键、Shift 键或Alt键等,都将触发一个OnKeyDown 事件。
下面这段代码说明了OnKeyDown 事件的用法:当打印时在窗体中按下Esc 键后,取消打印作业。
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
begin
if (Key=VK_ESCAPE) and Printer.Printing then
begin
Printer.Abort; //中止打印
MessageDlg(’停止打印!’, mtInformation, [mbOK],0);
end;
end;
2.OnKeyPress 事件
当按下键盘上的一个字符键(如字母键、数字键等)时,会触发一个OnKeyPress 事件。但如果单独按下功能键(F1~F12)、Ctrl 键、Shift 键或Alt 键等,就不会产生OnKeyPress 事件。
以下代码利用OnKeyPress 事件显示用户按下的是什么键:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
MessageDlg ( ’你按下了:’+Key+’键!’,mtInformation, [mbOK], 0)
end;
3.OnKeyUp 事件
当抬起键盘上被按下的键时,就会产生一个OnKeyUp 事件。对于功能键(F1~F12)、Ctrl 键、Shift 键或Alt 键等,也会触发OnKeyUp 事件。
下面的一段代码说明了OnKeyDown 事件和OnKeyUp 事件的用法:
var
FormColor: TColor; //用来保存窗体原来的颜色
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
//当按下键时先保存窗体的颜色然后再改变窗体的颜色
begin
FormColor := Form1.Color;
Form1.Color := clAqua;
end;
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
//当键弹起时恢复窗体的颜色
begin
Form1.Color := FormColor;
end;
程序运行后,在窗体中按下某个键然后松开,窗体的颜色会随之改变。
注意:按下某个键长时间不放,或同时按下多个键,这样会多次触发OnKeyDown 事件。





There are 0 records,
Comment:
Must be registered users to comment(必须是注册用户才能发表评论)

Disclaimer Privacy Policy About us Site Map
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.