electron electron-vue放大、缩小、关闭、恢复窗口大小

方式一:
	import {remote} from 'electron'
	
	缩小:
		remote.getCurrentWindow().minimize();
	
	放大:
		remote.getCurrentWindow().maximize();
		判断是否处于最大化:
			remote.getCurrentWindow().isMaximized()
		
	恢复:
		remote.getCurrentWindow().restore();
		
	关闭:
		remote.getCurrentWindow().maximize();
		
方式二:渲染进程和主进程通信,通过主进程控制窗口大小
	mainWindow.minimize();
	mainWindow.maximize();
	mainWindow.isMaximized();
	mainWindow.restore();
	mainWindow.maximize();

代码示例:
方式一:

      minux()
      {
     
          remote.getCurrentWindow().minimize();
      },
      max()
      {
     
      	  //如果已处于最大化则恢复
          if(remote.getCurrentWindow().isMaximized())
          {
     
            remote.getCurrentWindow().restore();
          }else{
     
            remote.getCurrentWindow().maximize();
          }
      },
      close()
      {
     
          remote.getCurrentWindow().close();
      }

方式二:
渲染进程:

<template>
  <div class="header">
   	<span class="el-icon-minus" @click="minimizeWin"></span>
    <span class="el-icon-full-screen" @click="maximizeWin"></span>
    <span class="el-icon-close" @click="closeWin"></span>
   </div>
</template>
<script>
import {
      ipcRenderer} from 'electron';
export default {
     
  methods: {
     
     minimizeWin(){
     
       ipcRenderer.send('window-min') // 通知主进程我要进行窗口最小化操作
    },
    maximizeWin(){
     
      ipcRenderer.send('window-max')
    },
    closeWin(){
     
      ipcRenderer.send('window-close')
    }
  }
}
</script>
<style lang="scss">
	.header{
     
		span{
     
			font-size:20px;
			margin-right:20px;
			color:red;
		}
	}
</style>

主进程:

// 1. 窗口 最小化
ipcMain.on('window-min',function(){
      // 收到渲染进程的窗口最小化操作的通知,并调用窗口最小化函数,执行该操作
  win.minimize();
})

// 2. 窗口 最大化、恢复
ipcMain.on('window-max',function () {
     
  if(win.isMaximized()){
      // 为true表示窗口已最大化
    win.restore();// 将窗口恢复为之前的状态.
  }else{
     
    win.maximize();
  }
})

// 3. 关闭窗口
ipcMain.on('window-close',function (){
     
  win.close();
})

你可能感兴趣的:(electron桌面应用,electron)