gpt4 book ai didi

windows - Elecronjs的全局键盘快捷键在制作后不起作用(使用 Electron 锻造)

转载 作者:行者123 更新时间:2023-12-03 12:39:47 30 4
gpt4 key购买 nike

我目前正在开发一个类似于Spotlight搜索的应用程序。功能之一是能够使用键盘快捷键(在本例中为ctrl + D)调用搜索栏。我正在使用electron.js来创建它。为了创建全局快捷方式,我使用了以下命令:

  app.whenReady().then(() => {
globalShortcut.register('CommandOrControl+D', () => {
if (mainWindow.isVisible() == false) {
mainWindow.show();
console.log("\nctrl + D was pressed\nmainWindow focused");
} else if (mainWindow.isVisible() == true) {
mainWindow.blur();
mainWindow.hide();
console.log("\nctrl + D was pressed\nmainWindow not focused")
}
})
})
在测试期间(使用electron-forge),我将输入 electron-forge start命令暂时运行该程序,并且运行良好,但是在运行 electron-forge make和运行exe文件后,快捷方式不再可用于隐藏/模糊窗口,但是确实可以召唤 window 。
我尝试将ctrl + D命令更改为ctrl + X(由 Electron 推荐)和其他几个命令,并重新制作项目以确保快捷方式未使用,但没有运气。我也从isFocused而不是isVisible开始,即使在测试中也没有用。
注意:我使用的是Windows 10,有时在使用 Electron 时的运行方式与Mac可能不同,尽管它在此问题上并没有什么不同。

最佳答案

这是一个非常奇怪的故障,但是我设法使其正常工作。 Electron Forge没事。事实证明isVisible的输出不是很可靠,因此通过将其替换为isFocused,它可以完美地工作。这也意味着可以删除mainWindow.hide()
我还发现Windows本身或其他程序采用的许多快捷方式都可能使结果困惑(非常明显,但仍需注意),并且Super Key(Windows Key)由于主要用于系统级程序而无法正常工作。

关于windows - Elecronjs的全局键盘快捷键在制作后不起作用(使用 Electron 锻造),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62963926/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com