电子,最小化屏幕

Electron, minimizing the screen

我是新来的,我有一个 Electron 项目,我想做我自己的 minimize/maximize,关闭按钮。我的 minimize/maximize 按钮不太好用。我已经通过几个主题提出问题,但它仍然行不通。 当我第一次点击时,window最大化了,但再次点击时,它不会最小化,所以一直处于if/else中的"window is maximized"状态。

]

即使我开始创建自己的布尔值来强制执行该函数,它也能理解何时最大化。但是不会去别的州。

这是代码示例


  const remote = require('electron').remote;

  let screenExit = document.getElementById("close-btn")
  let screenSize = document.getElementById("size-btn")

//Close Windows

screenExit.addEventListener( "click", e => {
  let window = remote.getCurrentWindow()
  window.close()
 } )

//Minimize & Maximize

 $('#size-btn').click(function() {
  let window = remote.getCurrentWindow()
  if(window.isMaximized()){
      window.restore();
      console.log("AAAAAAAAAAAAH")
  }else{
      window.maximize();
      console.log("This sh** gone work ._.")
  }
});

在控制台中,它一直记录我 "AAAAAAAAAAAAH" 因为它不会转到其他情况。即使我自己做布尔值。

提前致谢!

尝试使用 window.unmaximize()window.minimize() 来实际最小化它,而不是 window.restore()

还原方法用于return之前的状态,在最小化之前

好的,我有消息了

electron 的方法“.isMaximized”不起作用,所以应用程序看不到它是最大还是最小化。一旦你知道这一点,你就可以在一种情况下应用未最大化的情况,在另一种情况下应用最大化(感谢@Khokim Mamarasulov),然后你只需做一个布尔值,一旦你输入一个或另一个值就会改变,这里有一个例子。

//Minimize & Maximize
 $('#size-btn').click(function() {
  let window = remote.getCurrentWindow()
  if(changeState == true){
      window.unmaximize();
      console.log ("beforeUnmax :",changeState)
      changeState = false
      console.log ("afterUnmax :",changeState)
  }else{
      window.maximize();
      console.log ("beforeMax :",changeState)
      changeState = true
      console.log ("afterMax :",changeState)

  }
});