我想制作一个应用程序,它在加载时位于系统托盘中,甚至在我打开另一个程序(比如记事本或 vlc 或任何东西)之后,即即使应用程序未处于焦点并且如果我按 G 在我的键盘上,托盘图标应该显示工具提示 - “按下 G 键”。
我已经尝试了几种代码,但当应用程序失焦时没有任何效果。我可以使用 Register Hot Key
但它还需要一个修饰符(如 Ctrl 或 Alt 等,以及我的键 G)。那么,有什么办法可以实现这一目标吗?
许多托盘图标所做的事情,如防病毒应用程序等。
而且我不想使用 AutoHotkey
应用程序。我想 build 一个,但需要一些帮助。
最佳答案
WindowsHookLib.dll 救了我很多次。它使您可以非常轻松地在整个系统范围内连接鼠标和键盘。
http://www.vbforums.com/showthread.php?t=436321
钩住键盘并在按下“G”时 Action :
Imports WindowsHookLib
Public Class frmMain
Dim WithEvents gkh As New LLKeyboardHook
Private Sub frmMain_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
gkh.RemoveHook()
ghk.Dispose()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
gkh.InstallHook()
End Sub
Private Sub gkh_KeyDown(ByVal sender As Object, ByVal e As WindowsHookLib.KeyEventArgs) Handles gkh.KeyDown
If e.KeyCode = Keys.G Then
REM G is pressed!
End If
End Sub
Private Sub gkh_KeyUp(ByVal sender As Object, ByVal e As WindowsHookLib.KeyEventArgs) Handles gkh.KeyUp
If e.KeyCode = Keys.G Then
REM G was pressed and now released
End If
End Sub
End Class
关于c# - (VB 或 C#)在系统托盘中运行应用程序并在应用程序未处于焦点时收听键盘输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2534378/