先发送SHIFT的按下命令
再发送1键
然后再发送SHIFT键的弹起命令,
下面是我以前在广海论坛发的贴子的部分源码,你看看
.....
Public Const VbKey1 = &H31 '数字1键,攻击技能放在此快捷键
Public Const VbKey2 = &H32 '数字2键,拾取快捷键
Public Const VbKey4 = &H34 '数字4键,回血或红药快捷键
Public Const VK_F1 = &H70 'F1键,魔法药快键键,当然,你还可以加入更多的键,只要相应的加入些—判断就行了
Public Const WM_KEYDOWN = &H100 '按键按下时
Public Const WM_KEYUP = &H101 '按键放开时
Public Const vbKeyTab = &H9 'Tab键,武林外传中的寻怪键
....
SendMessage Hwd, WM_KEYDOWN, vbKeyTab, 0& '寻怪Tab键
SendMessage Hwd, WM_KEYUP, vbKeyTab, 0&
....
SendMessage Hwd, WM_KEYDOWN, VbKey4, 0& '按4键
SendMessage Hwd, WM_KEYUP, VbKey4, 0&
SendMessage Hwd, WM_KEYDOWN, VbKey4, 0& '按4键
SendMessage Hwd, WM_KEYUP, VbKey4, 0&
我没用SendMessage,用的keybd_event
下面的代码是我模拟WIN+D来显示桌面用的
它需要4个动作,按下WIN,按下D,放开D,放开WIN
参考下吧:
Call keybd_event(91, 0, 0, 0)
Call keybd_event(Asc("D"), 0, 0, 0)
Call keybd_event(Asc("D"), 0, KEYEVENTF_KEYUP, 0)
Call keybd_event(91, 0, KEYEVENTF_KEYUP, 0)
对了, KEYEVENTF_KEYUP = &H2
49就是'1'的ASCII码,你现在需要Shift+1,实际上就是'!'的ASCII码,也就是33