【发布时间】:2020-10-25 23:32:23
【问题描述】:
在 Electron 中,有没有办法在上下文菜单中启用/禁用特定的 MenuItem,具体取决于用户右键单击的元素?我还需要有关单击了哪个确切元素的信息并将该信息传递给上下文菜单功能。
例如,假设我的渲染器进程中有这个 html:
<p id="p1">First paragraph</p>
<p id="p2">Second paragraph</p>
<p id="p3">Third paragraph</p>
该窗口的上下文菜单如下所示:
var menu = new Menu();
menu.append(new MenuItem({label: "This menu item is always shown",}));
menu.append(new MenuItem({ // shown only when clicked on p1 or p3
label: "This menu is not always shown",
click: function(id){
// I want variable id to be an id of paragraph that I have clicked on
}
}));
所以当我右键单击第一段或第三段时,应该会弹出一个包含 2 个项目的上下文菜单。 但是当我右键单击第二段时,应该会弹出一个包含 1 个项目的上下文菜单。 另外,我想将段落 id 作为参数传递给上下文菜单函数,这样我就可以从那里知道我点击了哪个段落。
【问题讨论】:
标签: javascript node.js electron