美文网首页
electron预创建窗口方法总结

electron预创建窗口方法总结

作者: SailingBytes | 来源:发表于2021-08-19 10:44 被阅读0次

    electron创建窗口会出现白屏问题,以下是介绍预创建窗口的总结。

    1、基本设置不变,初始化创建的时候添加show: false配置。

    const { BrowserWindow } = require('electron');

    const win = new BrowserWindow({ show: false });

    每次只需show/hide窗口即可。

    win.show(); // 显示

    win.hide(); // 隐藏

    2、某些快捷键或者系统默认快捷键,会对窗口默认触发close操作。

    这样就会导致窗口被销毁,当要展示窗口时,需要重新创建,就会再次出现白屏问题。

    解决方法:做预创建窗口监听,阻止触发close,改为hide。

    // 预创建窗口

    win.on('close', function(e) {

        e.preventDefault();  

        setTimeout(() => { win.hide(); }, 50)

    });

    3、但是阻止预创建窗口触发close时,同样也会阻止整个electron应用退出。

    解决办法:对app对退出前监听,增加是否要退出应用的全局标识。

    const { app } = require('electron');

    app.on('before-quit', function(e) {

        global.QUIT = true;

    });

    // 预创建窗口

    win.on('close', function(e) {

       if (global.QUIT) { return false; }

        e.preventDefault();

        setTimeout(() => { win.hide(); }, 50)

    });

    相关文章

      网友评论

          本文标题:electron预创建窗口方法总结

          本文链接:https://www.haomeiwen.com/subject/hppobltx.html