Electron中文文档

新手 685983304  中级 642625556 高级 602866851 Q群区别? 征集友情链接公告

推荐版:3.0.10   测试版:4.0.0-beta.8   极客版:4.0.0-nightly.20181010  

globalShortcut

当应用程序没有键盘焦点时监听全局键盘事件。

线程:主线程

globalShortcut 模块可以在操作系统中注册/注销全局快捷键, 以便可以为各种快捷方式自定义操作。

注意: 快捷方式是全局的; 即使应用程序没有键盘焦点, 它也仍然在持续监听键盘事件。 在应用程序模块发出 ready 事件之前, 不应使用此模块。

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

app.on('ready', () => {
  // 注册一个 'CommandOrControl+X' 的全局快捷键
  const ret = globalShortcut.register('CommandOrControl+X', () => {
    console.log('CommandOrControl+X is pressed')
  })

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

  // 检查快捷键是否注册成功
  console.log(globalShortcut.isRegistered('CommandOrControl+X'))
})

app.on('will-quit', () => {
  // 注销快捷键
  globalShortcut.unregister('CommandOrControl+X')

  // 清空所有快捷键
  globalShortcut.unregisterAll()
})

方法

globalShortcut 模块具有以下方法:

globalShortcut.register(accelerator, callback)

注册 accelerator 的全局快捷键。当用户按下已注册的快捷键时, 将调用 callback 函数。

如果该快捷键已经被其他应用程序使用, 回调函数将不会被触发。 该特性由操作系统定义,因为操作系统不希望多个程序的全局快捷键互相冲突。

globalShortcut.isRegistered(accelerator)

Returns Boolean - 表示 accelerator 全局快捷键是否注册成功

当快捷键已经被其他应用程序注册时, 此调用将返回 false 。 该特性由操作系统定义,因为操作系统不希望多个程序的全局快捷键互相冲突。

globalShortcut.unregister(accelerator)

注销 accelerator 的全局快捷键。

globalShortcut.unregisterAll()

注销所有的全局快捷键(清空该应用程序的全局快捷键)。



相关npm包集合




相关站点资源





官方指南

常见问题 (FAQ)

指南和教程

详细教程

API 参考

自定义 DOM 元素:

主进程可用的模块:

渲染进程(网页)可用的模块:

两种进程都可用的模块:

开发

  • electron-vue 开发过程中的几个常见问题的解决方案
  • electron 如何禁用页面缩放事件?
  • JS开发者社区

    和大家在一起

    新手/1元新手 685983304 
    中级/5元 中级 642625556
    高级/50元 高级 602866851