Как исправить ошибку изменения размера окна приложения для BrowserView в Electronjs? - PullRequest
0 голосов
/ 25 октября 2019

так что я сейчас пишу электронное приложение. Чтобы сделать приложение немного более плавным, я создал BrowserWindow и загрузил только строку меню и фон.

После этого я добавил BrowserView, чтобы отобразить фактическое содержание.

Код длямой BrowserWindow:

function createWindow() {
    win = new BrowserWindow({
        width: 800,
        height: 600,
        show: false,
        frame: false,
        webPreferences: {
            nodeIntegration: true
        }
    })

    win.loadFile(path.join(__dirname, 'views/index.pug'));

    win.on('closed', () => {
        win = null;
    })

    win.once('ready-to-show', () => {
        win.show();
    })
}

Код для моего BrowserView:

function createViews() {
    contentView = new BrowserView({ webPreferences: { nodeIntegration: true } });

    win.addBrowserView(contentView);

    contentView.setBounds({ x: 0, y: 23, width: win.getBounds().width, height: win.getBounds().height - 23 });
    contentView.setAutoResize({ width: true, height: true });

    contentView.webContents.loadFile(path.join(__dirname, 'views/imageGallery.pug'));
}

(Если есть функция спойлера для скрытия кода: извините, я не нашел)


Как только я создаю окно, оно работает, как и предполагалось, также нормально работает нормальное изменение размера с помощью перетаскивания мышью.

Теперь моя проблема в том, как только я разверну окноили отмените максимизацию моего окна с помощью функций win.maximize() и win.unmaximize() my BrowserView. Но размер больше не соответствует BrowserWindow. Содержимое BrowserView обрезается с правой стороны.

Окно после максимизации: Maximized Window

Окно после максимизации: Unmaximized Window

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...