我正在尝试使用GetAsyncKeystate捕获按键。
我知道可以使用Application.Onkey
来完成此操作,但是我想确保在按下键时不会多次触发该代码,并且我知道可以使用GetAsyncKeystate将先前的状态存储在变量中来完成此操作以便以后进行比较。
我目前在公共模块中声明了以下内容:
#If Win64 Then
Public Declare PtrSafe Function GetAsyncKeystate Lib "user32" _
(ByVal vKey As Long) As Integer
#Else
Public Declare Function GetAsyncKeystate Lib "user32" _
(ByVal vKey As Long) As Integer
#End If
然后在包含我的主要代码的模块中,我尝试执行以下操作:
Sub KeyPressed
'If KeyPressed is X key then
'Do something
'Or if KeyPressed is Y key then
'Do something else
End Sub
任何帮助将不胜感激。