максимизировать/развернуть не работает на электроне при изменении размера: false

Я разрабатываю настольное приложение от Electron. Какие окна без рамок, и я пишу кнопку JS для максимизации/разворачивания, которая работает хорошо?

<button class="max" onclick="MaxUnMax();">&nbsp;</button>

JS

function MaxUnMax () {
   const remote = require('electron').remote
   const { BrowserWindow } = remote;
   var window = remote.getCurrentWindow();
   if (!window.isMaximized()) {
      window.maximize();
   } else {
      window.unmaximize();
   }
}

Но когда я отключаю возможность изменения размера (на resizable: false на main.js), кнопка максимизации/разворачивания не работает.


person Hobo    schedule 23.10.2017    source источник
comment
Вы проверили этот пост stackoverflow.com/a/46882965/7434393? Т.е. попробуйте использовать getFocusedWindow вместо getCurrentWindow. Это решает вашу проблему?   -  person kontrollanten    schedule 23.10.2017
comment
нет, когда я использую это, он перестает работать!   -  person Hobo    schedule 23.10.2017


Ответы (1)


у меня возникла аналогичная проблема, и я нашел это решение:

вместо использованияwindow.isMaximized() я использовал window.isFullScreen()

а для window.maximize() и window.unmaximize() я использовал window.setFullScreen(true) и window.setFullScreen(false);

а у меня работает даже с resizable: false

решение 1:

const remote = require('electron').remote;
const { BrowserWindow } = remote;
function MaxUnMax () {
   var window = remote.getCurrentWindow();
   if (!window.isFullScreen()) {
      window.setFullScreen(true);
   } else {
      window.setFullScreen(false);
   }
}

решение 2:

const remote = require('electron').remote;
const { BrowserWindow } = remote;
function MaxUnMax () {
   var window = remote.getCurrentWindow();
   window.setFullScreen(!win.isFullScreen());
}
person Amine Beihaqi    schedule 04.09.2019