我知道如何使用ipcRenderer.send()和ipcMain.on()将事件从渲染器进程发送到主进程.我还可以使用event.sender.send()将回复发送回渲染器进程,但是陷入了如何将事件从主进程发送到所有渲染器进程的麻烦,更像是广播.
解决方法:
您可以创建对BrowserWindow实例的引用数组,当需要全局事件时,可以使用sender函数将其映射,例如:
let windows = [];
let backgroundComputation = new BrowserWindow(options);
let webInteractions = new BrowserWindow(different_options);
let imageProcessing = new BrowserWindow(another_options);
windows.push(backgroundComputation)
windows.push(webInteractions)
windows.push(imageProcessing)
let sender = (message, windows) =>
windows.map((ref) => ref.webContents.send('event_name', message))
如果您有一整堆,这可能会很方便.您还可以在顶部窗口中的选项alwaysOnTop:true中将flag设置为true,以便任何其他窗口都位于下面.希望这可以帮助!
原文地址:https://codeday.me/bug/20191111/2019213.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。