二、electron 的 BrowserWindow 的属性

const { app, BrowserWindow } = require('electron')

function createWindow() {

  let mainWin = new BrowserWindow({
    x: 100,
    y: 100, //设置窗口的显示位置,相对于当前屏幕的左上角 
    show: true, //默认情况下创建一个窗口对象之后就会显示,设置为false,就不会显示了
    width: 800,
    height: 600,//width, height 窗口的宽高
    maxHeight: 800,
    maxWidth: 1000,
    minHeight: 300,
    minWidth: 300,// 可以通过 min max 来设置当前应用窗口的最大和最小宽高
    resizable: true,//是否允许用户改变窗口的大小
    icon: 'favicon.ico',// 设置一个图片路径,可以自定义当前应用的显示图标
    title: "鹤鸣", // 自定义当前应用的显示标题,index.html 中 title 标签的文本内容为空
    // frame: false, // 用于自定义 menu ,设置 false 可以将默认的菜单栏隐藏
    // transparent: true, // 窗口透明化
    autoHideMenuBar: true, // 隐藏导航栏
    webPreferences: {
      enableRemoteModule: true,  // 启用远程模块
      nodeIntegration: true, // 是否集成 Nodejs
      // webSecurity: false, // 是否开启安全策略
      // preload: path.join(__dirname, 'preload.js') // 预加载
    }
  })

  mainWin.loadFile('index.html')

  mainWin.on('ready-to-show', () => {
    mainWin.show()
  })

  mainWin.on('closed', () => {
    console.log('this window is closed');
    mainWin = null
  })
}

app.whenReady().then(() => {
  createWindow()
})

app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})

enableRemoteModule 是开启远程模块,意思就是说在别的地方使用 electron 的时候,需要设置为 true 才可以使用

const { remote } = require('electron')

remote.BrowserWindow({
    width:200,
    height:200,
})

以上这么写是开启一个新的窗口。

获取当前窗口也是需要 引入 remote ,调用 getCurrentWindow 方法

const { remote } = require('electron')

remote.getCurrentWindow()

上一篇:git 常用操作指令


下一篇:【将xml文件转yolov5训练数据txt标签文件】连classes.txt都可以生成-二、使用方法