用程序模拟键盘和鼠标键盘

消失的爱恋22

消失的爱恋22

2016-02-19 19:33

岁数大了,QQ也不闪了,微信也不响了,电话也不来了,但是图老师依旧坚持为大家推荐最精彩的内容,下面为大家精心准备的用程序模拟键盘和鼠标键盘,希望大家看完后能赶快学习起来。
在Windows大行其道的今天,windows界面程序受到广大用户的欢迎。对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制。有时,对于繁杂的,或重复性的操作,我们能否通过编制程序来代替手工输入,而用程序来模拟键盘及鼠标的输入呢?答案是肯定的。这主要是通过两个API函数来实现的。   

  下面以Delphi为例来介绍一下如何实现这两个功能。模拟键盘我们用Keybd_event这个api函数,模拟鼠标按键用mouse_event函数。大家不用担心,在delphi里调用api函数是很方便的事。   
  
  先介绍一下Keybd_event函数。Keybd_event能触发一个按键事件,也就是说回产生一个WM_KEYDOWN或WM_KEYUP消息。当然也可以用产生这两个消息来模拟按键,但是没有直接用这个函数方便。Keybd_event共有四个参数,第一个为按键的虚拟键值,如回车键为vk_return, tab键为vk_tab。第二个参数为扫描码,一般不用设置,用0代替就行。第三个参数为选项标志,如果为keydown则置0即可,如果为keyup则设成“KEYEVENTF_KEYUP”,第四个参数一般也是置0即可。用如下代码即可实现模拟按下i键,其中的$49表示i键的虚拟键值:
  
  

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

keybd_event($49,0,0,0);
  keybd_event($49,0,KEYEVENTF_KEYUP,0); ...   
  
  

  mouse_event最好配合setcursorpos(x,y)函数一起使用,与Keybd_event类似,mouse_event有五个参数,第一个为选项标志,为MOUSEEVENTF_LEFTDOWN时表示左键按下,为MOUSEEVENTF_LEFTUP表示左键松开,向系统发送相应消息。第二三个参数分别表示x,y相对位置,一般可设为0,0,第四五个参数并不重要,一般也可设为0,0。若要得到Keybd_event和mouse_event函数的更详细的用法,可以查阅msdn或delphi帮助。下面是关于mouse_event的示例代码:
   

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

setcursorpos(20,132);
  mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
  mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
  mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
  mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); ...


   上面的代码表示鼠标的双击,若要表示单击,用两个mouse_event即可(一次放下,一次松开)。  
   注意,不管是模拟键盘还是鼠标事件,都要注意还原,即按完键要松开,一个keydown对应一个keyup;鼠标单击 完也要松开, 不然可能影响程序的功能。  
   
   好了,希望本文能让你对模拟键盘和鼠标按键有个初步的了解,如果想更深入的了解其中的奥妙,可以查阅详实的msdn在线帮助,并多多动手实践。

展开更多 50%)
分享

猜你喜欢

用程序模拟键盘和鼠标键盘

编程语言 网络编程
用程序模拟键盘和鼠标键盘

vc模拟鼠标键盘操作实用类

编程语言 网络编程
vc模拟鼠标键盘操作实用类

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

win7开启键盘鼠标键用键盘来控制鼠标的移动

电脑网络
win7开启键盘鼠标键用键盘来控制鼠标的移动

鼠标键盘共享工具Synergy介绍

服务器
鼠标键盘共享工具Synergy介绍

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Java Applet编程响应鼠标键盘

编程语言 网络编程
Java Applet编程响应鼠标键盘

键盘和鼠标

autocad教程
键盘和鼠标

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Word2007输入不了中文解决方法

Word2007输入不了中文解决方法

css技巧:分享9个网页制作常用技巧 (1)

css技巧:分享9个网页制作常用技巧 (1)
下拉加载更多内容 ↓