从主进程(电子)捕捉鼠标移动事件

Owe*_*vin 6 javascript events mouseevent vue.js electron

我想用 Electron 从主进程(非渲染)中捕获鼠标移动事件。
现在,我正在做一个 setInterval 循环来捕捉鼠标位置,但这不是很干净(并且来自渲染过程)......

它看起来像这样:

setInterval(function () {
   let mousePos = SCREEN.getCursorScreenPoint()
}, 0)  
Run Code Online (Sandbox Code Playgroud)

那么......我怎样才能从主进程中捕获事件?
我想知道鼠标的位置,当鼠标在窗口外时

Tho*_*ita 7

您可以从主进程获取鼠标位置,其方式与在渲染器进程中完全相同,唯一的事情是您需要等到应用程序模块的就绪事件发出。

因此,例如:

// wait until ready event is fired
electron.app.on('ready', function() {

    // get the mouse position
    let mousePos = electron.screen.getCursorScreenPoint();
    console.log(mousePos);
});
Run Code Online (Sandbox Code Playgroud)

https:// Electronjs.org/docs/api/screen#screengetcursorscreenpoint

  • Electron 中没有这样的事件,您必须每次都存储位置并将其与之前的值进行比较,然后在位置发生变化时触发您自己的函数。 (2认同)