我正在学习VB.NET中的键盘钩子,需要帮助解决一个错误。起初,它告诉我必须将(Not (KeyDown) Is Nothing) & KeyUp更改为RaiseEvent,因为它们是事件,我已经这样做了。但是现在它告诉我应该有一个')‘表达式,而我不知道这是什么意思。我已经使用VB.NET维基和代码片段走到了这一步,我为自己感到非常自豪。我现在不希望这件事失败。请帮帮我!在最底部有一张错误的图像。
Public Event KeyDown As KeyboardHookCallback
Public Event KeyUp As KeyboardHookCallback
Private Function HookFunc(ByVal nCode As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
If (nCode >= 0) Then
Dim iwParam As Integer = wParam.ToInt32
If ((iwParam = WM_KEYDOWN) _
OrElse (iwParam = WM_SYSKEYDOWN)) Then
If (Not RaiseEvent KeyDown Is Nothing) Then
RaiseEvent KeyDown(CType(Marshal.ReadInt32(lParam), VKeys))
End If
End If
If ((iwParam = WM_KEYUP) _
OrElse (iwParam = WM_SYSKEYUP)) Then
If (Not RaiseEvent KeyUp Is Nothing) Then
RaiseEvent KeyUp(CType(Marshal.ReadInt32(lParam), VKeys))
End If
End If
End If
Return CallNextHookEx(hookID, nCode, wParam, lParam)
End Function

https://stackoverflow.com/questions/44519242
复制相似问题