Electron 创建菜单和基本使用
一、编写菜单模版
在 Electron 中编写菜单,需要先建立一个模板,这个目标很类似我们 JSON 或者类的数组。
我们打开项目,在项目的根目录下新建一个文件夹 main,意思是主进程中用到的代码我们都写到这里。
然后新建一个 menu.js 文件,然后编写如下代码。
const { Menu } = require('electron');
var template = [
{
label:'凤来怡洗浴会所',
submenu:[
{label:'精品SPA'},
{label:'泰式按摩'}
]
},
{
label:'大浪淘沙洗浴中心',
submenu:[
{label:'牛奶玫瑰浴'},
{label:'爱情拍拍手'}
]
}
];
var m = Menu.buildFromTemplate(template);
Menu.setApplicationMenu(m);
然后再打开主进程 main.js 文件,在 ready 生命周期中,直接加入下面的代码,就可以实现自定义菜单了。
require('./main/menu.js')
需要注意的是,Menu 属于是主线程下的模块,所以只能在主线程中使用,这个要记清楚。
二、使用菜单打开新窗口
有了菜单之后,可以在菜单中加入 click 事件,代码如下:
const { Menu ,BrowserWindow} = require('electron');
var template = [
{
label:'凤来怡洗浴会所',
submenu:[
{
label:'精品SPA',
//主要代码--------------start
click:()=>{
win = new BrowserWindow({
width:500,
height:500,
webPreferences:{ nodeIntegration:true}
});
win.loadFile('yellow.html');
win.on('closed',()=>{
win = null
})
}
//主要代码----------------end
},
{label:'泰式按摩'}
]
},
{
label:'大浪淘沙洗浴中心',
submenu:[
{label:'牛奶玫瑰浴'},
{label:'爱情拍拍手'}
]
}
];
var m = Menu.buildFromTemplate(template);
Menu.setApplicationMenu(m);
这时候我们打开终端输入 electron . 之后,就可以看到效果了,当然我们还可以绑定快捷键
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论