广州网站建设总结,wordpress搜索框,wordpress 链接新窗口,北京网站设计制作过程用 electron 开发自己的接口测试工具#xff08;Post Tools#xff09;#xff0c;在设置了 globalShortcut 快捷键后#xff0c;发现应用中的快捷键与系统全局快捷键冲突了#xff0c;导致系统快捷键不可正常使用。 快捷键配置
export function initGlobalShortcut(main…用 electron 开发自己的接口测试工具Post Tools在设置了 globalShortcut 快捷键后发现应用中的快捷键与系统全局快捷键冲突了导致系统快捷键不可正常使用。 快捷键配置
export function initGlobalShortcut(mainWindow) {globalShortcut.register(CommandOrControlshiftr, () {app.relaunch()app.exit()})globalShortcut.register(CommandOrControlshiftdelete, () {resetLocalData()})globalShortcut.register(F1, () {shell.openExternal(https://tiven.cn/p/4dc21784/)})globalShortcut.register(F2, () {shell.openExternal(https://tiven.cn/service/tools/post-tool)})globalShortcut.register(F5, () {mainWindow?.reload()})globalShortcut.register(CommandOrControlr, () {mainWindow?.reload()})globalShortcut.register(CommandOrControlq, () {app.exit()})globalShortcut.register(CommandOrControlw, () {mainWindow?.hide()mainWindow?.setSkipTaskbar(true)})globalShortcut.register(F11, () {// 是否全屏if (mainWindow?.isFullScreen()) {// mainWindow?.minimize();mainWindow?.setFullScreen(false)mainWindow?.setMenuBarVisibility(true)} else {mainWindow?.setFullScreen(true)mainWindow?.setMenuBarVisibility(false)}})globalShortcut.register(Esc, () {// 是否全屏if (mainWindow?.isFullScreen()) {// mainWindow?.minimize();mainWindow?.setFullScreen(false)mainWindow?.setMenuBarVisibility(true)}})globalShortcut.register(CommandOrControlF12, () {mainWindow?.webContents.openDevTools({ mode: detach })})
}解决冲突
一般来说会在 mainWindow ready-to-show 的时候初始化快捷键当然也可以在应用失去焦点blur的时候主动应用的注销快捷键以避免和系统快捷键冲突。
mainWindow.on(ready-to-show, () {mainWindow.show()// 注册全局快捷键initGlobalShortcut(mainWindow)})mainWindow.on(blur, () {// 失去焦点注销快捷键globalShortcut.unregisterAll()}) 欢迎访问天问博客