Class: BrowserWindow
创建和控制浏览器窗口。
进程:主进程
BrowserWindow 是一个EventEmitter.
通过 options 可以创建一个具有原生属性的 BrowserWindow 。
new BrowserWindow([options])
options详情看文档:BrowserWindow
// main.js
...
const mainWindow = new BrowserWindow({
width: 800,
height: 600,
title: 'jilyz',// 如果由loadURL()加载的HTML文件中含有标签<title>,此属性将被忽略。
// frame: false, // 边框
show: false, // 显示, 默认为true
backgroundColor: '#ccc',
webPreferences: {
preload: path.join(__dirname, 'preload.js'),
nodeIntegration: true,
webviewTag: true,
nativeWindowOpen: true
}
})
...
// 父子窗口、模态窗口
const child = new BrowserWindow({
width: 400,
height: 300,
// x: 0,
// y: 0,
parent: mainWindow, // 父子窗口
modal: true, // 模态窗口
show: false
})
child.loadURL('https://www.baidu.com')
child.once('ready-to-show', () => {
child.show();
})
BrowserView类
创建和控制视图
进程:主进程
BrowserView 被用来让 BrowserWindow 嵌入更多的 web 内容。 它就像一个子窗口,除了它的位置是相对于父窗口。 这意味着可以替代webview标签.
文档地址:BrowserView类
用法:
// main.js
// 创建视图并在4秒后消失
const view = new BrowserView()
mainWindow.setBrowserView(view)
view.setBounds({ x: 0, y: 100, width: 300, height: 300 })
view.webContents.loadURL('https://www.baidu.com')
setTimeout(() => {
view.destroy();
}, 4000);