Создайте прозрачное окно с надписью fullscreenable = false, как это
const mainWindow = new BrowserWindow({
width: customWidth,
height: CustomHeight,
x: positionMarginX,
y: positionMarginY,
skipTaskbar: process.platform !== 'darwin',
fullscreenable: false,
frame: false,
resizable: false,
hasShadow: false,
transparent: true,
minimizable: false,
maximizable: false,
darkTheme: true,
closable: false,
titleBarStyle: 'customButtonsOnHover',
webPreferences: {
webSecurity: false,
nodeIntegration: true,
},
})
И использовать рендеринг IPC на стороне реакции, как этот
ipcRenderer.send(
'window-resize',
300, // height
300 // width
)
Затем используйте IPC main для обработки этого события следующим образом
ipcMain.on('window-resize', (e,height, width) => {
windowSize = {
width: width,
height: height,
x: customX,
y: customY,
}
mainWindow.setBounds(windowSize)
})
и, если вы работаете над пользовательским управлением, перейдите по этому URL-адресу Безрамное окно с электронными элементами управления (Windows)