# global-shortcut
`global-shortcut` 模塊可以便捷的為您設置(注冊/注銷)各種自定義操作的快捷鍵.
**Note**: 使用此模塊注冊的快捷鍵是系統全局的(QQ截圖那種), 不要在應用模塊(app module)響應 `ready`
消息前使用此模塊(注冊快捷鍵).
```javascript
var app = require('app');
var globalShortcut = require('global-shortcut');
app.on('ready', function() {
// Register a 'ctrl+x' shortcut listener.
var ret = globalShortcut.register('ctrl+x', function() {
console.log('ctrl+x is pressed');
})
if (!ret) {
console.log('registration failed');
}
// Check whether a shortcut is registered.
console.log(globalShortcut.isRegistered('ctrl+x'));
});
app.on('will-quit', function() {
// Unregister a shortcut.
globalShortcut.unregister('ctrl+x');
// Unregister all shortcuts.
globalShortcut.unregisterAll();
});
```
## Methods
`global-shortcut` 模塊包含以下函數:
### `globalShortcut.register(accelerator, callback)`
* `accelerator` [Accelerator](accelerator.md)
* `callback` Function
注冊 `accelerator` 快捷鍵. 當用戶按下注冊的快捷鍵時將會調用 `callback` 函數.
### `globalShortcut.isRegistered(accelerator)`
* `accelerator` [Accelerator](accelerator.md)
查詢 `accelerator` 快捷鍵是否已經被注冊過了,將會返回 `true`(已被注冊) 或 `false`(未注冊).
### `globalShortcut.unregister(accelerator)`
* `accelerator` [Accelerator](accelerator.md)
注銷全局快捷鍵 `accelerator`.
### `globalShortcut.unregisterAll()`
注銷本應用注冊的所有全局快捷鍵.
- 介紹
- 常見問題
- Electron 常見問題
- 向導
- 支持平臺
- 分發應用
- 提交應用到 Mac App Store
- 打包應用
- 使用 Node 原生模塊
- 主進程調試
- 使用 Selenium 和 WebDriver
- 使用開發人員工具擴展
- 使用 Pepper Flash 插件
- 使用 Widevine CDM 插件
- 教程
- 快速入門
- 桌面環境集成
- 在線/離線事件探測
- API文檔
- 簡介
- 進程對象
- 支持的 Chrome 命令行開關
- 環境變量
- 自定義的 DOM 元素
- File 對象
- <webview> 標簽
- window.open 函數
- 在主進程內可用的模塊
- app
- autoUpdater
- BrowserWindow
- contentTracing
- dialog
- globalShortcut
- ipcMain
- Menu
- MenuItem
- powerMonitor
- powerSaveBlocker
- protocol
- session
- webContents
- Tray
- 在渲染進程(網頁)內可用的模塊
- desktopCapturer
- ipcRenderer
- remote
- webFrame
- 在兩種進程中都可用的模塊
- clipboard
- crashReporter
- nativeImage
- screen
- shell
- 開發
- 代碼規范
- 源碼目錄結構
- 與 NW.js(原 node-webkit)在技術上的差異
- 構建系統概覽
- 構建步驟(OS X)
- 構建步驟(Windows)
- 構建步驟(Linux)
- 在調試中使用 Symbol Server