Я пытаюсь заставить электронное приложение открываться в той же позиции на экране, что и при закрытии в последний раз.
Для этого у меня есть файл конфигурации, в котором записываются границыокно, когда оно закрыто.
function set(settingKey, settingValue) {
nconf.set(settingKey, settingValue);
nconf.save();
};
mainWindow.on('close', function () {
config.set('bounds', mainWindow.getBounds());
});
Но , когда я перезагружаю приложение и устанавливаю положение mainWindow
, указав опции x
, y
, width
, height
илипри вызове setBounds
:
mainWindow.setBounds(config.get('bounds'));
окно выглядит немного ниже, чем ранее.Я понял, что полученное мной значение y
не учитывает высоту строки заголовка окна.
Этот вопрос похож, но решение приводит к той же проблеме.
Я пробовал:
mainWindow.getPosition
mainWindow.getContentBounds
в сочетании с setContentBounds
electron.screen.getDisplayMatching(mainWindow.getBounds()).bounds
безрезультатно.Первые два метода дают мне одинаковые результаты.Последний дает { x: 0, y: 0, width: 1920, height: 1080 }
.
Кто-нибудь знает, как получить положение окна ОС в электронном виде?
Если это вообще поможет, я нахожусь на Уэйленде (Гном 3.32).