如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接信息。

在上一篇苏南大叔的文章中,大家已经实践了如何利用electron打包一个网站(https://newsn.net/say/electron-pack-site.html),那么在本篇文章中,我们将继续这个网站打包的例子。讲述如何隐藏electron窗体的菜单。

隐藏菜单代码

在mac系统中,electron的菜单是和主窗口是分离的。所以对于主窗口来说,并没有太多视觉上的影响。而在win系统中,菜单和主窗体是连在一起,不可分割的。这个时候,这些菜单就显得有些多余。那么苏南大叔就再次diy一下,隐藏electron的菜单。

代码如下:

let mainWindow
//const {Menu} = require('electron')
const Menu = electron.Menu
function createWindow () {
  Menu.setApplicationMenu(null)
  mainWindow = new BrowserWindow({width: 800, height: 600})
  mainWindow.loadURL("https://electron.org.cn/")
  mainWindow.on('closed', function () {
    mainWindow = null
  })
}

关键代码见下图。

如何隐藏electron窗体的菜单? - menu_1

如何隐藏electron窗体的菜单?(图5-1)

如果你在main的顶部定义了electron,那么你就可以使用下面的代码。

const electron = require('electron')
//...
const Menu = electron.Menu
function createWindow () {
  Menu.setApplicationMenu(null)
  //...
}

当然,你也可以从electron这个lib里面,再次导入Menu对象。见下面的代码。

const {Menu} = require('electron')
function createWindow () {
  Menu.setApplicationMenu(null)
  //...
}

效果都是一致的,这段代码只能放在主进程的ready之后使用,建议放在createWindow函数里面。渲染进程中,如果想修改menu的话,是不能这样使用的。请谨记。更多menu相关文档,请点击这里查看。https://electron.org.cn/doc/api/menu.html

菜单隐藏效果(win)

window下,删除菜单前效果图:
如何隐藏electron窗体的菜单? - menu_0

如何隐藏electron窗体的菜单?(图5-2)

window下,删除菜单后效果图:
如何隐藏electron窗体的菜单? - menu_2

如何隐藏electron窗体的菜单?(图5-3)

菜单隐藏效果(mac)

然而,这个删除顶部菜单的方法,只在windows和linux版本上有效。在mac系统下无效,mac系统下还是会存在顶部的菜单栏。但是mac版本下,本来主窗体和菜单也是分开的。所以整体来说,效果本来还是不错的。

如何隐藏electron窗体的菜单? - mac_menu

如何隐藏electron窗体的菜单?(图5-4)

对于mac版本来说,默认情况下(就是没有对菜单进行设置的话),开发版的时候,菜单比较多(见上图)。打包release之后,就只有一个菜单了(见下图)。

如何隐藏electron窗体的菜单? - 000

如何隐藏electron窗体的菜单?(图5-5)

总结

苏南大叔分享了删除顶部菜单的方法,更多相关菜单设置的方式,苏南大叔将会在后续文章中讲述。https://newsn.net/tag/electron/

本文涉及的electron的api的说明,见这里:https://electron.org.cn/doc/api/menu.html

  【electron】秘籍文章入口,仅传授于有缘之人  electron

欢迎转载传播本篇原创文章,转载请保留链接及作者信息。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

打赏领取小礼物

打赏任意金额,发送截图到邮箱 shang@newsn.net ,可以领取精选回馈如下(任选其一):
  • 《前端视频教程大礼包》一套
  • 《wordpress精选皮肤》一套
  • 《dedecms织梦精选模板》一套
感谢您的打赏,让我更有动力,将更多精彩教程文章,呈现给大家!谢谢!

岁月静好

关注互联网发展,关注苏南大叔的《程序如此灵动~》博客
本文章来自:程序如此灵动~
博客地址为:https://newsn.net/
原文地址为:https://newsn.net/say/electron-hide-sys-menu.html
上一篇好文:win环境,electron构建时的各种下载错误问题的解决方案
下一篇好文:electron如何创建无边框窗体

如果您转载了本文章,出于某种原因,并没有注明作者或者出处。
在这里,苏南大叔也表示理解和支持。因为苏南大叔深深地明白:
您会在合适的时机,合适的地方,给本博客一个外链。对吧?
您若开心,便是安好!岁月静好,但愿世界和平,没有纷争~