addWindow(window) { this.windowStack.addWindow(window); // 将窗口添加到窗口栈中 if (this.applicationMenu) // 如果有应用程序菜单 this.applicationMenu.addWindow(window.browserWindow); // 将窗口的浏览器窗口添加到应用程序菜单中

window.once('window:loaded', () => { // 当窗口加载完毕时
  this.autoUpdateManager && // 如果自动更新管理器存在
    this.autoUpdateManager.emitUpdateAvailableEvent(window); // 发出更新可用事件
});

if (!window.isSpec) { // 如果窗口不是规格
  const focusHandler = () => this.windowStack.touch(window); // 焦点处理程序将窗口触摸到窗口栈的顶部
  const blurHandler = () => this.saveCurrentWindowOptions(false); // 模糊处理程序保存当前窗口选项
  window.browserWindow.on('focus', focusHandler); // 当窗口获得焦点时
  window.browserWindow.on('blur', blurHandler); // 当窗口失去焦点时
  window.browserWindow.once('closed', () => { // 当窗口关闭时
    this.windowStack.removeWindow(window); // 从窗口栈中删除窗口
    window.browserWindow.removeListener('focus', focusHandler); // 移除窗口的焦点处理程序
    window.browserWindow.removeListener('blur', blurHandler); // 移除窗口的模糊处理程序
  });
  window.browserWindow.webContents.once('did-finish-load', blurHandler); // 当窗口的web内容完成加载时
  this.saveCurrentWindowOptions(false); // 保存当前窗口选项
}

}

JavaScript 添加窗口 (addWindow) 函数代码详解

原文地址: https://www.cveoy.top/t/topic/oU0B 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录