gpt4 book ai didi

javascript - 如何更改 Electron 快速启动示例应用程序的 native 菜单

转载 作者:可可西里 更新时间:2023-11-01 02:39:24 25 4
gpt4 key购买 nike

Electron 应用程序打开时使用与 electron-quick-start 示例应用程序中出现的相同默认菜单以及如何更改它?还尝试了 menu example on the docs但没有任何改变。当我用 mainWindow.setMenu(null); 隐藏菜单时,菜单消失了,但仍然无法初始化新菜单

有什么想法吗?

平台:windows 7

Electron 版本:0.36.4

引用文件:

package.json:

{
"name": "electric_timer",
"version": "0.1.0",
"description": "a Time sheet & project managment",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "none"
},
"author": "Eyal Ron",
"license": "MIT"
}

应用程序.js:

var app = require('app');
var BrowserWindow = require('browser-window');

app.on('ready', function (){
var mainWindow = new BrowserWindow({
width: 800,
height: 600
});
mainWindow.setMenu(null);
mainWindow.loadUrl('file://' + __dirname + '/main.html');
});

主要.js:

var remote = require('remote');
var Menu = remote.require('menu');

var menu = Menu.buildFromTemplate([
{
label: 'Electron',
submenu: [
{
label: 'Prefs',
click: function(){
alert('hello menu');
}
}
]
}
]);
Menu.setApplicationMenu(menu);

main.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>electron test</title>
</head>
<body>
<h1>hello world</h1>
<script>requier('./main.js')</script>
</body>
</html>

最佳答案

Electron 的“default_app”sets the menu ;如果你想避免这种情况,你需要 Electron 直接启动你的应用程序,而不是通过默认应用程序(注意:如果你使用类似 electron . 的东西启动你的应用程序,你实际上启动了默认应用程序)。

Electron looks in its resource folder对于“app”、“app.asar”或“default_app”,因此为了直接启动您的应用程序,您需要将其复制或链接到 Electron 的资源文件夹中。

无论您如何启动您的应用程序,您都可以使用 Menu.setApplicationMenu 设置您的菜单——您可以在主进程中执行此操作,您不需要像示例中那样在渲染器中执行此操作。顺便说一下,您的 main.html 中有一个拼写错误(requier 而不是 require),因此如果这是您的实际代码,则表明您的 main.js 根本没有运行。

关于javascript - 如何更改 Electron 快速启动示例应用程序的 native 菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34840026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com