electron 设置快捷键 CmdOrCtrl 在 windows 下无效。。。

发布于 2022-09-06 10:57:59 字数 1306 浏览 21 评论 0

小弟我写了个小小 demo 想学习一下 electron,有一个功能需要在 input 中复制粘贴,我查找资料后知道了可以通过设置菜单,然后绑定快捷的方法来使用 cmd+c,cmd+v(我开发是在 Mac 上),这是我的代码:

import { app, BrowserWindow, Menu } from 'electron'
...
var template = [{
  label: "Application",
  submenu: [
      { label: "About Application", selector: "orderFrontStandardAboutPanel:" },
      { type: "separator" },
      { label: "Quit", accelerator: "Command+Q", click: function() { app.quit(); }}
  ]}, {
  label: "Edit",
  submenu: [
      { label: "Undo", accelerator: "CommandOrControl+Z", selector: "undo:" },
      { label: "Redo", accelerator: "Shift+CommandOrControl+Z", selector: "redo:" },
      { type: "separator" },
      { label: "Cut", accelerator: "CommandOrControl+X", selector: "cut:" },
      { label: "Copy", accelerator: "CommandOrControl+C", selector: "copy:" },
      { label: "Paste", accelerator: "CommandOrControl+V", selector: "paste:" },
      { label: "Select All", accelerator: "CommandOrControl+A", selector: "selectAll:" }
  ]}
];

...
Menu.setApplicationMenu(Menu.buildFromTemplate(template));
...

用 electron-packager 打包后,在 Mac 上运行是可以使用复制粘贴等快捷键的,但是我给 windows 打包后在 windows 下运行,快捷键就毫无反应,我看人家官网教程和别人的博客上都是“CmdOrCtrl”,就好了呀,我CmdOrCtrl也试过了 windows 下没用,不缩写用CommandOrControl也试过了也是 windows 下没用,Mac 没问题,,,请问各位大哥这个可能是什么导致的?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半仙 2022-09-13 10:57:59

我之前开发的时候,Window 上默认支持"复制粘贴等快捷键"的,而MacOS 不支持,所以需要对 MacOS 进行显示添加。

所以当时就对系统进行了判断,https://github.com/o2team/xce...

现在我发现 Electron 更新比较多。你可以看看官网下的 https://electronjs.org/ 的一个链接,关于主要的 API 案例和代码实现,你可以下载下来看看,https://electron-api-demos.gi...

另外,也可以开启“开发者模式”,看看打包后时候有报错的情况出现。

感谢邀请。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文