当 WinForm 不在前面时,C# 检测 KeyDown
C# Detect KeyDown when the WinForm is not in front
我正在尝试使用 keyDown 方法 (Ctrl + R) 记录鼠标在屏幕上的位置。
当窗体在前面时效果很好,但是当我在窗体外部单击时,窗体变成灰色,转到后面并停止 keyDown 检测。
即使表单在后面但 keyDown 不起作用,表单中的标签仍会显示鼠标位置。
显然我知道 windows 的正常操作是优先使用前面和正在使用的软件但是
有没有一种方法可以使 keyDown 方法即使在表单不在前面或表单最小化时也能正常工作。
提前致谢,欢迎提出任何意见、想法或建议。
更新: 感谢回复我得到了答案。我从这里得到了 Global Hotkeys 和 LowLevelHooks 的库:http://www.dreamincode.net/forums/topic/180436-global-hotkeys/
您正在寻找的是用于检测 winform 外部键的全局键盘挂钩您可以查看此 link 代码示例
Keyboard Hook in C#
我正在尝试使用 keyDown 方法 (Ctrl + R) 记录鼠标在屏幕上的位置。 当窗体在前面时效果很好,但是当我在窗体外部单击时,窗体变成灰色,转到后面并停止 keyDown 检测。 即使表单在后面但 keyDown 不起作用,表单中的标签仍会显示鼠标位置。 显然我知道 windows 的正常操作是优先使用前面和正在使用的软件但是 有没有一种方法可以使 keyDown 方法即使在表单不在前面或表单最小化时也能正常工作。 提前致谢,欢迎提出任何意见、想法或建议。
更新: 感谢回复我得到了答案。我从这里得到了 Global Hotkeys 和 LowLevelHooks 的库:http://www.dreamincode.net/forums/topic/180436-global-hotkeys/
您正在寻找的是用于检测 winform 外部键的全局键盘挂钩您可以查看此 link 代码示例 Keyboard Hook in C#