首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当窗口被最小化电子时,window.maximize()失败

当窗口被最小化电子时,window.maximize()失败
EN

Stack Overflow用户
提问于 2017-07-12 20:57:39
回答 2查看 858关注 0票数 0

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

  • 最小化
  • 最大化
  • 重新启动
  • 出口

下面是创建托盘图标的代码:

代码语言:javascript
复制
    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'
    }];

然而,我有一个problem.When,我点击最小化,然后我点击最大化,我得到一个错误,说Cannnot read property maximize of null,有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-07-13 06:28:31

您可以始终检查它是否最小化,并将其还原为一种解决方法。我觉得这没什么大不了的。

要检查和还原它,可以使用以下命令:

代码语言:javascript
复制
if (window.isMinimized()) {
    window.restore();
}

整件事都是这样的:

代码语言:javascript
复制
{
    label: 'Maximize',
    click:(_,window)=>{
        if (window.isMinimized()) {
            window.restore();
        }
        window.maximize();
    }
}
票数 2
EN

Stack Overflow用户

发布于 2017-07-13 08:45:53

托盘不绑定到任何BrowserWindow,因此window为空。如果在主进程中创建了托盘菜单,则只需使用mainWindow引用即可;如果在渲染器中,则可以使用remote.getCurrentWindow()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45067391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档