资源描述:
《delphi集锦之一》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1、模拟按下键盘上的某个键procedureTForm1.Button1Click(Sender:TObject);begin//模拟在Edit1组件中按下了字母a键PostMessage(Edit1.Handle,WM_KEYDOWN,65,0);end;procedureTForm1.Timer1Timer(Sender:TObject);begin//模拟在窗体Form1中按下了Tab键PostMessage(Form1.Handle,WM_KEYDOWN,VK_TAB,0);end;2、限制
2、鼠标移动的范围procedureTForm1.Button1Click(Sender:TObject);varrtbutton2:trect;beginrtbutton2:=button2.BoundsRect;mapwindowpoints(handle,0,rtbutton2,2);clipcursor(@rtbutton2);end;procedureTForm1.Button2Click(Sender:TObject);beginclipcursor(0);end;end.3、自定义鼠标首先
3、,在Delphi的主菜单工具下选图像编辑器,编辑一个名为face.res的资源文件,它应该包括个人制作的五个.cur文件:faceleft.cur(图为:圆脸上一双向左看的眼睛),faceright.cur(图为:圆脸上一双向右看的眼睛),plainface.cur(图为:圆脸上一双向前看的眼睛),leftshrink.cur(图为:闭着左眼的圆脸),rightshrink.cur(图为:闭着右眼的圆脸)。implementation{$R*.dfm}{$RFACE.RES}procedureTFo
4、rm1.FormCreate(Sender:TObject);beginscreen.cursors[1]:=loadcursor(hinstance,pchar('crhandpoint'));screen.Cursors[2]:=loadcursor(hinstance,pchar('faceright'));screen.Cursors[3]:=loadcursor(hinstance,pchar('plainface'));screen.Cursors[4]:=loadcursor(hins
5、tance,pchar('leftshrink'));screen.Cursors[5]:=loadcursor(hinstance,pchar('rightshrink'));screen.Cursor:=4;end;procedureTForm1.FormClick(Sender:TObject);beginscreen.Cursor:=crsqlwait;end;end.4、键盘事件常用的键盘事件有:(1)OnKeyDown当按下键盘上的任一个键,如字母键、数字键、功能键(F1~F12)、Ct
6、rl键、Shift键或Alt键等,都将产生一个OnKeyDown事件。下面的一段代码说明了OnKeyDown事件的用法:当打印的时候在窗体中按下Esc键后,取消打印作业。procedureTForm1.FormKeyDown(Sender:TObject;varKey:Word;Shift:TShiftState);beginif(Key=VK_ESCAPE)andPrinter.PrintingthenbeginPrinter.Abort;//中止打印MessageDlg('打印中止。',mtIn
7、formation,[mbOK],0);end;end;(2)OnKeyPress当按下键盘上的一个字符键,如字母键、数字键等会产生一个OnKeyPress事件,但是单独按下功能键(F1~F12)、Ctrl键、Shift键或Alt键等,不会产生OnKeyPress事件。下面的一段代码说明了OnKeyPress事件的用法:procedureTForm1.FormKeyPress(Sender:TObject;varKey:Char);begin//显示按下的键MessageDlg('你按下了'+Key
8、+'键。',mtInformation,[mbOK],0)end;(3)OnKeyUp当按下键盘上的任一个键后松开时,都会产生一个OnKeyUp事件。对于功能键(F1~F12)、Ctrl键、Shift键或Alt键等,也会产生一个OnKeyUp事件。下面的一段代码说明了OnKeyDown事件和OnKeyUp事件的用法:varFormColor:TColor;//用来保存窗体原来的颜色procedureTForm1.FormKeyDown(Sender:TObject;v