electron 在hide()show()方法之后,电子浏览器窗口的最小高度和宽度不起作用

gywdnpxw  于 2023-09-28  发布在  Electron
关注(0)|答案(2)|浏览(243)

1.Step

mainWindow = new BrowserWindow({
  width: 1200,
  height: 700,
  center: true,
  'min-height': 700,
  'min-width': 1200,
  webPreferences: {nodeIntegration:true}});
mainWindow.loadURL(HOME_URL);

2.步骤(发生了一些事件,我想暂时隐藏主窗口并显示另一个(createFacebookWindow()fn已经在加载URL))

mainWindow.hide();


facebookWindow = require('./modules/auth/views.js').createFacebookWindow();

FB Window settings ({
                                              width: 1200,
                                              height: 700,
                                              center: true,
                                              'min-height': 700,
                                              'min-width': 1200,
                                               webPreferences: {nodeIntegration:false}})

3.步骤(另一个事件发生,我破坏FB窗口并显示主窗口)

facebookWindow.close();

 facebookWindow.on('closed', function() {
    facebookWindow = null;
    mainWindow.show();
    //I tried below options it doesn't work
    //mainWindow.setSize(1200, 700);
    //mainWindow.setMinimumSize(1200, 700);

总结:
所以实际上在这些步骤之后,当我显示mainWindow时,它不记得mainWindow设置min-height和min-width不起作用。
当facebookWindow未打开时,一切都很好,所以在与Windows切换期间必须发生一些事情。也许是顺序不对?

umuewwlo

umuewwlo1#

您可以在这里阅读BrowserWindow文档:https://github.com/electron/electron/blob/master/docs/api/browser-window.md

  • maxWidth代替max-width
  • minWidth代替min-width
  • maxHeight代替max-height
  • minHeight代替min-height
nbewdwxp

nbewdwxp2#

你可以在初始化BrowserWindow时添加minWidth: 500,如下所示:

function createWindow () {
  // Create the browser window.
  const win = new BrowserWindow({
    backgroundColor: '#ffffff',
    width: 1024,
    height: 768,
    minWidth:500,
    webPreferences: {
      nodeIntegration: true
    }
  })
}

注意:函数createWindow位于main.js文件中,因此您只需在函数中添加minWidth: value即可。

相关问题