electron/docs-translations/zh-CN/api/global-shortcut.md
2017-02-09 17:08:58 +08:00

71 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# globalShortcut
> 当应用程序没有键盘焦点时检测键盘事件。
进程: [Main](../glossary.md#main-process)
`globalShortcut` 模块可以便捷的为你设置(注册/注销)各种自定义操作的快捷键。
**注意:** 使用此模块注册的快捷键是系统全局的(QQ截图那种), 不要在应用模块app module响应 `ready`
消息前使用此模块(注册快捷键)。
```javascript
const {app, globalShortcut} = require('electron')
app.on('ready', () => {
// Register a 'CommandOrControl+X' shortcut listener.
const ret = globalShortcut.register('CommandOrControl+X', () => {
console.log('CommandOrControl+X is pressed')
})
if (!ret) {
console.log('registration failed')
}
// Check whether a shortcut is registered.
console.log(globalShortcut.isRegistered('CommandOrControl+X'))
})
app.on('will-quit', () => {
// Unregister a shortcut.
globalShortcut.unregister('CommandOrControl+X')
// Unregister all shortcuts.
globalShortcut.unregisterAll()
})
```
## Methods
`globalShortcut` 模块包含以下函数:
### `globalShortcut.register(accelerator, callback)`
* `accelerator` [Accelerator](accelerator.md)
* `callback` Function
注册 `accelerator` 快捷键。当用户按下注册的快捷键时将会调用 `callback` 函数。
当 accelerator 已经被其他应用程序占用时,此调用将
默默地失败。这种行为是操作系统的意图,因为它们没有
想要应用程序争取全局快捷键。
### `globalShortcut.isRegistered(accelerator)`
* `accelerator` [Accelerator](accelerator.md)
返回 `Boolean` - 查询 `accelerator` 快捷键是否已经被注册过了,将会返回 `true``false`
当 accelerator 已经被其他应用程序占用时,此调用将
默默地失败。这种行为是操作系统的意图,因为它们没有
想要应用程序争取全局快捷键。
### `globalShortcut.unregister(accelerator)`
* `accelerator` [Accelerator](accelerator.md)
注销全局快捷键 `accelerator`
### `globalShortcut.unregisterAll()`
注销本应用程序注册的所有全局快捷键。