如何从屏幕取词?以及模拟键盘输入?
解决方案 »
- vb6中如何更改一个普通文件名为unicode文件名?
- 用VB怎么实现这个程序的效果?
- vsflexgrid 控件问题?请高手指教一下!!!
- 这是为什么 新手求助
- 求教使用API播放背景音乐。
- VB调用Word2000遇到的问题
- VB中的几个小问题,1、怎样窗体的最大化按钮变为不可用后,并且不能再忙改变窗体的大小!2、在按钮上加图标,让图标在左文字在右!
- 控件加入DLL
- 急!在一个网站中看不出rpt(水晶报表格式)的图片,安装什么软件可以看到它
- 关于VB中运行EXCEL的问题
- 删除注册表项问题,相当急,在线等!快进来帮我看看,也许简单,但我没弄过!
- 大家觉得在程序启动阶段,检查数据库结构有必要么?
【操作系统】
Win9X:Yes
WinNT:Yes
【说明】
这个函数模拟了键盘行动
【返回值】
【其它】
这个函数支持屏幕捕获(截图)。在win95和nt4.0下这个函数的行为不同
【参数表】
bVk ------------ Byte,欲模拟的虚拟键码
bScan ---------- Byte,键的OEM扫描码
dwFlags -------- Long,零;或设为下述两个标志之一
KEYEVENTF_EXTENDEDKEY
指出是一个扩展键,而且在前面冠以0xE0代码
KEYEVENTF_KEYUP
模拟松开一个键
dwExtraInfo ---- Long,通常不用的一个值。api函数GetMessageExtraInfo可取得这个值。允许使用的值取决于特定的驱动程序
Const VK_H = 72
Const VK_E = 69
Const VK_L = 76
Const VK_O = 79
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Form_KeyPress(KeyAscii As Integer)
'Print the key on the form
Me.Print Chr$(KeyAscii);
End Sub
Private Sub Form_Paint()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: [email protected]
'Clear the form
Me.Cls
keybd_event VK_H, 0, 0, 0 ' press H
keybd_event VK_H, 0, KEYEVENTF_KEYUP, 0 ' release H
keybd_event VK_E, 0, 0, 0 ' press E
keybd_event VK_E, 0, KEYEVENTF_KEYUP, 0 ' release E
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_O, 0, 0, 0 ' press O
keybd_event VK_O, 0, KEYEVENTF_KEYUP, 0 ' release O
End Sub
http://blog.csdn.net/Modest/archive/2006/04/29/696516.aspx