打算实现一下鼠标的快捷键,就是点击几下鼠标就可以自动执行一些软件。
1. 那么怎么设计我们的快捷键,并且不影响我们鼠标的正常使用呢?
我们的鼠标有左键,中键,右键。那么我是怎么设计的,中键表示开始和结束,在开始和结束之间统计左键的次数,根据这个次数来运行我们的程序。并且这里加上一个超时时间,就是按键的时间间隔是10秒内有效,超过时秒就作废。
例如我经常用的程序主要就是 口袋助理,微信,teamview, QQ音乐。那么首先就是需要定义我们的快捷键配置文件:
2.那么我们需要定义2个结构体:
2.1 第一个结构体,就是统计我们的鼠标左键次数
2.2 第二个结构体,就是关联左键次数和我们的要执行软件命令:
3. 功能实现流程。简介:首先就是统计鼠标事件,通过input设备(/dev/input/eventX)我们就可以统计了。
3.1 如何知道是不是鼠标设备呢?
3.2 找到鼠标设备之后我们就开始监听输入事件,如果有事件就读取事件信息:
3.3 然后就是解析事件信息,统计鼠标左键次数。
首先判断如果和上那个一次鼠标事件间隔事件比较长,直接重新开始统计流程:
首先必须有中键按下才表示开始,这时候我们才统计左键的次数。并且以中键结束,如果结束就执行我们定义的快捷键命令:
3.4 最后就是执行我们的命令啦:
4.github 源码:
https://github.com/linzhanglong/mouse_shortcuts