C#使用SnsSharp实现鼠标键盘钩子,实现全局按键响应

gitee下载地址:https://gitee.com/linsns/snssharp

一、键盘事件,使用 SnsKeyboardHook

按键事件共有3个:

KeyDown(按键按下)

KeyUp(按键松开)

KeyPress(按键按下并松开)

以KeyDown事件为例,使用代码如下:

cs 复制代码
SnsKeyboardHook snsKeyboardhook = new SnsKeyboardHook();
snsKeyboardhook.KeyDown += SnsKeyboardhook_KeyDown; 
snsKeyboardhook.Start();

private void SnsKeyboardhook_KeyDown(object sender, KeyEventArgs e)
{
    labState.Text = string.Format("状态:当前按下键盘{0}", e.KeyCode);
}

其中SnsKeyboardhook_KeyDown就是按键响应函数。

二、鼠标事件,使用SnsMouseHook

鼠标事件共有6个:

MouseDown(鼠标按下)

MouseUp(鼠标松开)

MouseMove(鼠标移动)

MouseWheel(鼠标滚动鼠轮)

Click(鼠标单击)

DoubleClick(鼠标双击)

以MouseDown事件为例,使用代码如下:

cs 复制代码
SnsMouseHook snsMouseHook = new SnsMouseHook();
snsMouseHook.MouseDown += SnsMouseHook_MouseDown;
snsMouseHook.Start();

private void SnsMouseHook_MouseDown(object sender, MouseEventArgs e)
{
    labState.Text = string.Format("状态:当前按下鼠标{0}", e.Button);
}

其中SnsMouseHook_MouseDown就是鼠标按下响应函数。

三、模拟键盘事件,使用SnsKeyboardSimulator

模拟按键事件共有3个:

KeyDown(按键按下)

KeyUp(按键松开)

KeyPress(按键按下并松开)

模拟按下空格键:SnsKeyboardSimulator.KeyDown(Keys.Space);

模拟按下确定键:SnsKeyboardSimulator.KeyDown(Keys.Enter);

四、模拟鼠标事件,使用SnsMouseSimulator

模拟鼠标事件共有5个:

MouseDown(鼠标按下)

MouseUp(鼠标松开)

MouseMove(鼠标移动)

Click(鼠标单击)

DoubleClick(鼠标双击)

模拟鼠标左键按下:SnsMouseSimulator.MouseDown(MouseButtons.Left);

模拟鼠标移动:SnsMouseSimulator.MouseMouve(x, y);

效果:

技术交流

QQ群: 577276243

相关推荐
csdn_aspnet9 小时前
C# .NET Core 源代码生成器(dotnet source generators)
c#·.netcore
时光追逐者10 小时前
C#/.NET/.NET Core技术前沿周刊 | 第 42 期(2025年6.9-6.15)
c#·.net·.netcore
z2014z16 小时前
第3章 C#编程概述 笔记
笔记·c#
葡萄城技术团队1 天前
基于 C# 和 .NET 的 Spread.NET 数据处理实战
c#
ou.cs1 天前
wpf 解决DataGridTemplateColumn中width绑定失效问题
c#·wpf
程序猿小D1 天前
第27节 Node.js Buffer
linux·开发语言·vscode·node.js·c#·编辑器·vim
王子文-上海1 天前
大数据实时风控引擎:Spark Streaming、Kafka、Flink与Doris的融合实践
c#·linq
csdn_aspnet1 天前
使用 C# 源生成器(Source Generators)进行高效开发:增强 Blazor 及其他功能
c#·.netcore
小码编匠1 天前
C# + OpenCvSharp 轮廓检测详解
后端·c#·.net
z2014z1 天前
第11章 结构 笔记
笔记·c#