Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 电子:如何预防Cmd+;问:为什么不辞职?_Javascript_Electron - Fatal编程技术网

Javascript 电子:如何预防Cmd+;问:为什么不辞职?

Javascript 电子:如何预防Cmd+;问:为什么不辞职?,javascript,electron,Javascript,Electron,我想强制用户只能从菜单或任务栏图标退出应用程序。我已经配置好了,但每次我点击Cmd+W或Cmd+Q,它就会退出应用程序 我试着用: app.on('quit',e=>e.preventDefault()) app.on('window-all-closed',e=>e.preventDefault()) …但它似乎没有任何效果。您可以使用菜单模块覆盖快捷方式,如下所示: const { Menu, MenuItem } = require('electron') const menu = ne

我想强制用户只能从菜单或任务栏图标退出应用程序。我已经配置好了,但每次我点击Cmd+W或Cmd+Q,它就会退出应用程序

我试着用:

app.on('quit',e=>e.preventDefault())
app.on('window-all-closed',e=>e.preventDefault())

…但它似乎没有任何效果。

您可以使用菜单模块覆盖快捷方式,如下所示:

const { Menu, MenuItem } = require('electron')
const menu = new Menu()

menu.append(new MenuItem({
  label: 'Quit',
  accelerator: 'CmdOrCtrl+Q',
  click: () => { console.log('Cmd + Q is pressed') }
}));

您可以隐藏或显示此菜单项,因为“退出”假设退出应用程序

cmd+q是OSX的东西,与electron没有任何关系,请参见:对,但它肯定是可覆盖的?您是否尝试过使用globalShortcut.unregister('CommandOrControl+q')我会问“为什么?”这是退出应用程序的标准方法。这类似于覆盖cmd+s以“删除文档中的所有内容”。是否解决了此问题?我还需要防止我的应用程序使用CMD+Q退出。原因是,我的应用程序对于它的应用程序来说是“任务关键型”的,而且对于那些手指快(开发人员臭名昭著)的人来说,使用CMD+Q很容易,而且可能没有意识到他们关闭了错误的应用程序。Chrome提示我再做一次。我喜欢这个功能,并希望在我的电子应用程序中实现它。