以下是一些 BrowserWindow 模块的常用功能和配置:
1. 创建主窗口:
const { app, BrowserWindow } = require('electron');
let mainWindow;
app.whenReady().then(() => {
mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
});
mainWindow.loadFile('index.html');
});
2. 窗口事件:
mainWindow.on('closed', () => {
mainWindow = null;
});
mainWindow.on('focus', () => {
console.log('Main window focused');
});
3. 加载本地或远程页面:
// 加载本地 HTML 文件
mainWindow.loadFile('index.html');
// 或加载远程 URL
mainWindow.loadURL('https://example.com');
4. 窗口大小和位置:
mainWindow.setSize(1024, 768);
mainWindow.setPosition(100, 50);
5. 窗口显示和隐藏:
mainWindow.show();
mainWindow.hide();
6. 窗口最大化、最小化和恢复:
mainWindow.maximize();
mainWindow.minimize();
mainWindow.restore();
7. 窗口状态:
console.log(mainWindow.isMaximized()); // 判断窗口是否最大化
console.log(mainWindow.isMinimized()); // 判断窗口是否最小化
8. 关闭窗口:
mainWindow.close();
9. 弹出对话框:
const { dialog } = require('electron');
dialog.showMessageBox(mainWindow, {
type: 'info',
message: 'This is an information dialog.',
buttons: ['OK']
});
10. 模态窗口:
const modalWindow = new BrowserWindow({
parent: mainWindow,
modal: true,
show: false
});
modalWindow.loadFile('modal.html');
modalWindow.show();
这只是 BrowserWindow 模块的一小部分功能和配置。通过 BrowserWindow,你可以对窗口进行更多的定制,例如设置菜单、处理 IPC 通信、使用 WebContents 进行更底层的操作等。详细的信息可以在 Electron 官方文档的 [BrowserWindow 部分](https://www.electronjs.org/docs/api/browser-window) 找到。
转载请注明出处:http://www.zyzy.cn/article/detail/10917/Electron