Electron 最小化窗口时,window.maximize()失败

Electron 最小化窗口时,window.maximize()失败,electron,trayicon,tray,Electron,Trayicon,Tray,我已经创建了一个带有托盘图标的电子应用程序。 右键单击托盘图标时,会显示一个包含4个选项的菜单: 最小化 最大化 重新启动 出口 以下是创建托盘图标的代码: trayIcon = new Tray('icons/foo.png'); const trayMenuTemplate = [{ label: 'Maximize', click:(_,window)=>{ window.maximize();

我已经创建了一个带有托盘图标的电子应用程序。 右键单击托盘图标时,会显示一个包含4个选项的菜单:

  • 最小化
  • 最大化
  • 重新启动
  • 出口
以下是创建托盘图标的代码:

    trayIcon = new Tray('icons/foo.png');
    const trayMenuTemplate = [{
        label: 'Maximize',
        click:(_,window)=>{
            window.maximize();
        }
    }, {
        label: 'Minimize',
        click:(_,window)=>{
            window.minimize();
        }
    }, {
        label: 'Restart'
    }, {
        type: 'separator'
    }, {
        label: 'Quit',
        role: 'quit'
    }];
但是我有一个问题。当我单击最小化然后单击最大化时,我得到一个错误,说
不能读取null的属性最大化

有什么想法吗?谢谢你可以随时检查它是否最小化,并将其恢复为解决方法。我觉得这没什么大不了的

要检查和恢复它,您可以使用以下方法:

if (window.isMinimized()) {
    window.restore();
}
整个事情是这样的:

{
    label: 'Maximize',
    click:(_,window)=>{
        if (window.isMinimized()) {
            window.restore();
        }
        window.maximize();
    }
}

您可以随时检查它是否已最小化,并将其恢复为解决方案。我觉得这没什么大不了的

要检查和恢复它,您可以使用以下方法:

if (window.isMinimized()) {
    window.restore();
}
整个事情是这样的:

{
    label: 'Maximize',
    click:(_,window)=>{
        if (window.isMinimized()) {
            window.restore();
        }
        window.maximize();
    }
}

托盘未绑定到任何浏览器窗口,因此
window
为空。如果在主进程中创建了托盘菜单,则可以使用
Main窗口
引用;如果在渲染器中,则可以使用
remote.getCurrentWindow()

托盘未绑定到任何浏览器窗口,因此
窗口
为空。如果在主进程中创建了托盘菜单,则可以使用
Main窗口
引用;如果在渲染器中,则可以使用
remote.getCurrentWindow()