Electron - 创建后更改 window 设置

Electron - Change window settings after creation

我的应用程序的框架默认可见。但是在创建它之后我希望能够改变它。这可能吗?到目前为止,这是我的代码:

app.on('ready', function() {
    const mainWindowSettings = {
        name: 'main',
        url: '/index.html',
        width: screenWidth,
        height: screenHeight,
        title: envObj.title,
        transparent: false,
        show: true,
        frame: true,
    };

    mainWindow = windowManager.createWindow(mainWindowSettings);

    mainWindow.frame = false;

    });

为了测试,我在 window 的创建下方将框架设置为 false,这将是应用程序中的另一种方法。

window 工作正常,但我不知道如何在创建后更改它的设置。

const 是块作用域的,因为您已经在 ready 事件的回调中声明了它,所以无法在您的应用程序的其他地方调用或引用它。因为它应该被视为一个常量,所以该值不能通过重新分配而改变(阅读更多MDN)。

我建议仔细查看快速入门代码中的注释:https://github.com/electron/electron-quick-start/blob/master/main.js#L9-L28

他们在 main.js 的全局范围内使用 let 来保留对 window 对象的全局引用。根据评论:

[...] if you don't, the window will be closed automatically when the JavaScript object is garbage collected.

好吧,您可以捕获 windows 并更改其属性。

var electron = require('electron');
var window = electron.remote.getCurrentWindow();

现在 windows 您可以使用电子本身提供的方法设置属性。

有关 window 功能的更多信息,请参阅此处:BrowserWindow