十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如果对普通的窗口发送就直接sendkeys,如果对高级一点的窗口发就用KEYBOARD_EVENT这个API函数,如果对高级游戏窗口发送按键消息一般就要用到驱动级WINIO模拟按键了,不知道你想用哪种我给一个keyboard_event函数模拟键盘按键的代码吧通用部分声明:Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal Scan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) 窗体部分,也就是按键实现代码:keybd_event vbKeyUp, 0, 0, 0 '按下↑键
创新互联专业为企业提供梅县网站建设、梅县做网站、梅县网站设计、梅县网站制作等企业网站建设、网页设计与制作、梅县企业网站模板建站服务,十余年梅县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
keybd_event vbKeyUp, 0, 2, 0 '释放↑键 这里模拟按上下方向键你自己改一下就行了
看了很多这方便的解决方案,很多都是一大段代码,版本也有差别,既然有可能别人用得起我也用不起。
我用一种最简单的方法,只要思路对所有人都能用得起。
其实非常简单,就是获取键值,Ctrl+Enter的健值是10,是不是思路一下就通了。以下是源码:
Private Sub 聊天输入框_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles 聊天输入框.KeyPress
If Asc(e.KeyChar) = 发送快捷键值 Then
发送消息过程()
End If
End Sub
源内容出处:
vb.net全局热键无效可以解决。
读取键盘操作时绕过了windows的消息机制,而使用DirectInput。需要注册全局热键。
因为窗体的焦点发生了转移,当焦点不在游戏人物操作的那个窗体的时候,是没办法向这个窗体发送模拟按键信息的。
执行键盘事件方法如下:
第一步,点击VS工具。
第二步,打开后,新建一个Windows窗体应用程序。
第三步,请看右下方Form的属性栏。
第四步,双击KeyDown。
第五步,输入提示按键代码,如图所示。
第六步,再次输入代码,设置属性KeyPreview为true。
第七步,运行程序,按下举例F5,则会弹出提示,表明已经成功获。