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 }) //主進程監(jiān)聽事件 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)
觸發(fā)主進程的send-card
事件.newWindow.webContents.send('sendWebsock', obj);
把數(shù)據(jù)傳遞給副屏幕窗口
副屏幕窗口接收
const { ipcRenderer } = require('electron');ipcRenderer.on('sendWebsock', (event, obj) => { console.log(obj)})
以上就是“electron 如何控制雙屏的顯示內容?”的詳細內容,更多請關注木子天禾科技其它相關文章!