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

相关推荐
鲤籽鲲4 小时前
C# System.Net.IPAddress 使用详解
网络·c#·.net
运维开发小白8 小时前
使用夜莺 + Elasticsearch进行日志收集和处理
运维·c#·linq
幻想趾于现实9 小时前
C# Winform 入门(4)之动图显示
开发语言·c#·winform
向宇it11 小时前
【零基础入门unity游戏开发——2D篇】SortingGroup(排序分组)组件
开发语言·unity·c#·游戏引擎·材质
军训猫猫头12 小时前
87.在线程中优雅处理TryCatch返回 C#例子 WPF例子
开发语言·ui·c#·wpf
du fei12 小时前
C# 与 相机连接
开发语言·数码相机·c#
古力德13 小时前
Unity中造轮子:定时器
c#·unity3d
小码编匠14 小时前
C# 实现西门子S7系列 PLC 数据管理工具
后端·c#·.net
“抚琴”的人1 天前
【机械视觉】C#+VisionPro联合编程———【六、visionPro连接工业相机设备】
c#·工业相机·visionpro·机械视觉
FAREWELL000751 天前
C#核心学习(七)面向对象--封装(6)C#中的拓展方法与运算符重载: 让代码更“聪明”的魔法
学习·c#·面向对象·运算符重载·oop·拓展方法