【问题标题】:How to make an event listener work when you are on a different application当您在不同的应用程序上时如何使事件侦听器工作
【发布时间】:2021-09-09 05:21:12
【问题描述】:

我正在使用 electronjs 创建一个带有事件监听器的应用程序,其中一个功能是当你按下键盘上的“a”键时,会发生一些事情。但是,当我在其他应用程序上时,此侦听器不起作用。

事件监听器的代码是:

document.addEventListener('keydown', (event) => {
  //function
}

【问题讨论】:

  • 完整性检查:'keydown' 不是 ‘keydown’
  • 我的错,我是在手机上输入的。

标签: javascript electron keyboard-shortcuts


【解决方案1】:

你需要注册一个globalShortcut,记得在应用要退出的时候取消注册。

这里是您可以使用的键和修饰符的文档:https://www.electronjs.org/docs/api/accelerator

const { app, globalShortcut } = require('electron')

app.whenReady().then(() => {
  // Register a 'A' shortcut listener.
  const ret = globalShortcut.register('A', () => {
    console.log('A is pressed')
  })

  if (!ret) {
    console.log('registration failed')
  }

  // Check whether a shortcut is registered.
  console.log(globalShortcut.isRegistered('A'))
})

app.on('will-quit', () => {
  // Unregister a shortcut.
  globalShortcut.unregister('A')

  // Unregister all shortcuts.
  globalShortcut.unregisterAll()
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-07
    • 2021-03-12
    • 2019-05-27
    • 1970-01-01
    • 2016-10-31
    • 1970-01-01
    相关资源
    最近更新 更多