kihlh / hmc-win32

HMC Easier Access to System APIs 简化连接winapi的过程的node c++模块

Home Page:https://kihlh.gitbook.io/hmc/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

大佬们 没有文档我要哭了 请问键盘鼠标hook怎么用啊

codejack2004 opened this issue · comments

大佬们 没有文档我要哭了 请问键盘鼠标hook怎么用啊

commented
    
    hmc.mouseHook.once("wheel",function(e){
        console.log("滚轮-> ",e.isDown?"向上":"向下");
        // 滚轮滚动时候结束变化观察
        hmc.mouseHook.stop();
    });

    hmc.mouseHook.on("move",function(x, y, MousePoint, data){
        console.log("move-> [ x%d , y%d ]",x,y);
    });
    
    // on / once  还支持 "move"|"wheel"|"button"|"mouse"|"start"|"data"  事件  在ts中有详细的参数类型注释

    // all
    hmc.mouseHook.on("mouse",console.log);

    // 监听函数已经添加  启动hook
    hmc.mouseHook.start();
commented

hmc.mouseHook.on 添加一个变化响应函数
hmc.mouseHook.once 添加一个一次性的函数

hmc.mouseHook.start(); 启动 但是请注意响应函数需要在此之前 不然可能会丢失一小部分的消息
hmc.mouseHook.stop(); 移除所有变化函数 同时释放c++端的变化响应 并且释放定时器和轮询

commented

以下是键盘 相对而言会简单一些

commented
    
    hmc.keyboardHook.start();

    hmc.keyboardHook.on("change", function (KeyboardPoint) {
        
        console.log(
            "key-> " + KeyboardPoint.key, 
            "keyCode -> " + KeyboardPoint.keyCode, 
            ` [ ${KeyboardPoint.isDown ? "按下" : "释放"} ] `
            );

            // 忘了是固定大写还是固定小写了。。。
            if(KeyboardPoint.key="k"){
                
                // 结束
                hmc.keyboardHook.close();
            }
            
    });

会用了 感谢你对社区的贡献 嘎嘎好用

commented

键鼠相关操作 详细使用文档可见
#61