All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
轻量级的Ajax解决方案——DynAjax-直接在客户端调用C#类的方法_[AJAX教程]
ASP.NET编程取得网站绝对路径5方法_[Asp.Net教程]
VBScript教程第一课,什么是,VBScript_JavaScript技术_编程技术
利用SSH工具对服务器进行远程控制_php资料_编程技术
Visual C++中面向对象程序设计特征
几种个人网页里常用到的特效代码介绍_JavaScript技术_编程技术
具体实现 XML 的三种方式_[XML教程]
使用FileUpload控件上传图片并自动生成缩略图、自动生成带文字和图片的水印图_[Asp.Net教程]
php用session做客户验证时的注意事项_[PHP教程]
用ASP.NET,2.0主题控制网站外观_[Asp.Net教程]
Reading number is top 10 pictures
A man's favorite things11
大四女生借债隆胸成功
a pure sister
Startling Russian girl blind date scene3
Sora aoi mirror memorial classics1
A letter to parents choose world of warcraft seven big reason
这只猪到底犯了什么错?
西游四格漫画(一)
这才是真正的人体艺术2
From China fortress sora aoi2
Download software ranking
Unix video tutorial7
Boxer's Top ten classic battle5
Sora aoi's film--cangkong_Blue.Sky
Boxer's Top ten classic battle4
Boxer Classic video2
Ashlynn Video3
Tram sex maniac 2 (H) rar bag13
实战黑客不求人
Love the forty days
致我们终将逝去的青春
aaa published in(发表于) 2014/7/19 0:12:02 Edit(编辑)
delphi模拟按下键盘上的某个键

delphi模拟按下键盘上的某个键

delphi模拟按下键盘上的某个键

模拟按下键盘上的某个键

模拟按下键盘上的某个键,可以帮助用户解决只能利用键盘输入的问题。例如自动填表软件,可以将预先设定的内容分别添加到相应的选项中,用户不用一一填写。

下面编写一个实现模拟键盘输入的示例,单击“开始模拟”按钮,然后程序将演示输入字符串“’abc123{left}{left}{left}def{end}456{left 6}ghi{end}789”的过程({left 6}相当于按6次鼠标左键)。

本例通过调用Windows 提供的API 函数keybd_event 来模拟键盘的行为。keybd_event 的函数声明如下:

VOID keybd_event(

BYTE bVk, //虚拟键值

BYTE bScan, //扫描值

DWORD dwFlags, //各种函数功能

DWORD dwExtraInfo //额外信息

);

通过如下调用实现输入延迟现象。

PeekMessage(KeyboardMsg,0,WM_KEYFIRST, WM_KEYLAST, PM_REMOVE)

现在开始编写程序。

(1)创建一个新项目,添加一个RichEdit 组件和一个按钮,按钮的标题设为“开始模拟”,RichEdit组件用来接受键盘的输入。

(2)添加模拟键盘输入的函数SendKeys,它有两个参数,第1 个是要输入的字符串,第2 个是是否需要延时,代码如下:

Function SendKeys(SendKeysString : PChar; Wait : Boolean) : Boolean;

type

WBytes = array[0..pred(SizeOf(Word))] of Byte;

TSendKey = record

Name : ShortString;

VKey : Byte;

end;

const

{SendKeys 可以识别的键值:}

MaxSendKeyRecs = 41;

SendKeyRecs : array[1..MaxSendKeyRecs] of TSendKey =

(

(Name:’BKSP’; VKey:VK_BACK),

(Name:’BS’; VKey:VK_BACK),

(Name:’BACKSPACE’; VKey:VK_BACK),

(Name:’BREAK’; VKey:VK_CANCEL),

(Name:’CAPSLOCK’; VKey:VK_CAPITAL),

(Name:’CLEAR’; VKey:VK_CLEAR),

(Name:’DEL’; VKey:VK_DELETE),

(Name:’DELETE’; VKey:VK_DELETE),

(Name:’DOWN’; VKey:VK_DOWN),

(Name:’END’; VKey:VK_END),

(Name:’ENTER’; VKey:VK_RETURN),

(Name:’ESC’; VKey:VK_ESCAPE),

(Name:’ESCAPE’; VKey:VK_ESCAPE),

(Name:’F1’; VKey:VK_F1),

(Name:’F10’; VKey:VK_F10),

(Name:’F11’; VKey:VK_F11),

(Name:’F12’; VKey:VK_F12),

(Name:’F13’; VKey:VK_F13),

(Name:’F14’; VKey:VK_F14),

(Name:’F15’; VKey:VK_F15),

(Name:’F16’; VKey:VK_F16),

(Name:’F2’; VKey:VK_F2),

(Name:’F3’; VKey:VK_F3),

(Name:’F4’; VKey:VK_F4),

(Name:’F5’; VKey:VK_F5),

(Name:’F6’; VKey:VK_F6),

(Name:’F7’; VKey:VK_F7),

(Name:’F8’; VKey:VK_F8),

(Name:’F9’; VKey:VK_F9),

(Name:’HELP’; VKey:VK_HELP),

(Name:’HOME’; VKey:VK_HOME),

(Name:’INS’; VKey:VK_INSERT),

(Name:’LEFT’; VKey:VK_LEFT),

(Name:’NUMLOCK’; VKey:VK_NUMLOCK),

(Name:’PGDN’; VKey:VK_NEXT),

(Name:’PGUP’; VKey:VK_PRIOR),

(Name:’PRTSC’; VKey:VK_PRINT),

(Name:’RIGHT’; VKey:VK_RIGHT),

(Name:’SCROLLLOCK’; VKey:VK_SCROLL),

(Name:’TAB’; VKey:VK_TAB),

(Name:’UP’; VKey:VK_UP)

);



添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.