电子-创建后更改窗口设置

Electron - Change window settings after creation

本文关键字:窗口 设置 创建 电子      更新时间:2023-09-26

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

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;
    });

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

窗口工作得很好,但我不知道如何在创建它后改变它的设置

你可以捕获窗口并更改其属性。

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

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

有关您可以对窗口做什么的更多信息,请参阅此处:BrowserWindow

const是块作用域,因为您已经在ready事件的回调中声明了它,因此它不能在应用程序的其他地方调用或引用。由于它应该被视为常量,因此不能通过重新赋值来改变该值(在MDN上了解更多)。

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

它们在main.js的全局作用域中使用let来保留对窗口对象的全局引用。根据注释:

[…如果您不这样做,窗口将自动关闭JavaScript对象被垃圾收集。