function createOtherWin(){ const newURL = './src/otherWin/otherWin.html'; let displays = electron.screen.getAllDisplays(); console.log(displays); let externalDisplay = displays.find((display) => { return display.bounds.x !== 0 || display.bounds.y !== 0 }) console.log(externalDisplay) if (externalDisplay) { newWindow = new BrowserWindow({ fullscreen:true, x: externalDisplay.bounds.x, y: externalDisplay.bounds.y, webPreferences: { nodeIntegration: true, } }) newWindow.loadFile(newURL); newWindow.on('closed', () => { //这一段放外面的话,如果你电脑没双屏会报错。 newWindow = null }) //主进程监听事件 ipcMain.on('send-card', (event, obj) => { newWindow.webContents.send('sendWebsock', obj); }) ipcMain.on('sendError', (event, res) => { newWindow.webContents.send('sendErrorData', res); }) } }app.on('ready', ()=>{ createWindow(); createOtherWin();})
屏幕之间的通信的话用主进程与渲染进程通信的方式很好解决(main.js/ipcMain),
渲染进程ipcRenderer.send('send-card', obj)
触发主进程的send-card
事件.newWindow.webContents.send('sendWebsock', obj);
把数据传递给副屏幕窗口
副屏幕窗口接收
const { ipcRenderer } = require('electron');ipcRenderer.on('sendWebsock', (event, obj) => { console.log(obj)})
以上就是“electron 如何控制双屏的显示内容?”的详细内容,更多请关注木子天禾科技其它相关文章!