光伏电厂工作怎么样:如何用VB编一个自定义组合键粘贴的程序

来源:百度文库 编辑:中科新闻网 时间:2024/05/05 13:03:43
组合键可以是固定的(比如Alt+w),但是当按下这个组合键,程序会做一些读取数据的操作然后向系统的剪贴板中发送一段数据(文本就行),然后粘贴到当前的程序中(比如记事本,WORD,BBS)。在这个过程中窗口的焦点不能发生变化,就象普通的Ctrl+v一样。
我用sendkey试了,效果不太好,有时候不好用。
请高手指点,给出代码。

'定义部分
Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Public Const KEYEVENTF_EXTENDEDKEY = &H1
Public Const KEYEVENTF_KEYUP = &H2

'程序部分
'模拟 CTRL+C
keybd_event vbKeyControl, 0, KEYEVENTF_EXTENDEDKEY Or 0, 0
keybd_event 67, 0, KEYEVENTF_EXTENDEDKEY Or 0, 0
keybd_event 67, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0
keybd_event vbKeyControl, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0

'模拟 CTRL+V
keybd_event vbKeyControl, 0, KEYEVENTF_EXTENDEDKEY Or 0, 0
keybd_event 86, 0, KEYEVENTF_EXTENDEDKEY Or 0, 0
keybd_event 86, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0
keybd_event vbKeyControl, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0