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

相关推荐
geovindu6 小时前
CSharp: 万年历
开发语言·后端·c#·.net
离陌在学C#14 小时前
C# 异步编程:从 async/await 到 Task 实战指南
开发语言·数据库·c#
用户2986985301418 小时前
PDF 转 HTML 全攻略:三种方法轻松搞定网页转换
c#·html·.net
geovindu18 小时前
CSharp: State Pattern
开发语言·后端·c#·.net·状态模式·行为模式
俊昭喜喜里19 小时前
C#中的decimal
开发语言·c#
JustCheng2 天前
Dispacher(1/2)深入解析-详细使用
c#
CoderIsArt2 天前
C#中UI 线程与 Dispatcher
开发语言·ui·c#
呆呆敲代码的小Y3 天前
【游戏开发】Lua 与 C# 交互原理解析
c#·lua·交互·热更新·lua与c#交互·游戏热更新
用户298698530143 天前
PDF 转纯文本(TXT)免费攻略:轻松提取文字内容
人工智能·后端·c#
呆呆敲代码的小Y3 天前
【游戏开发】C# 中的迭代器
java·开发语言·c#·迭代器