我在使用 Electron BrowserWindow 时遇到问题,因为当我调用函数:win.maximize() 时,应用程序会与 Window 的任务栏重叠,就好像它处于全屏模式一样,但我设置了 fullScreen: false。
这是屏幕截图的链接! https://www.dropbox.com/s/a7b8h8ukaz4pf26/default%20window%20size.png?dl=0 https://www.dropbox.com/s/8wf0jcv5kp04c25/maximized%20window.png?dl=0
这是我的代码:
main.js(默认 Electron 窗口设置):
const {app, BrowserWindow} = require('electron');
const path = require('path');
let mainWindow;
app.on('window-all-closed', function(){
// Notice on OS X the application don't close when you quit window
// Darwin is the platform name when OS X in loaded
if(process.platform != 'darwin') {
app.quit();
}
});
app.on('ready', function() {
mainWindow = new BrowserWindow({
width: 700,
height: 450,
frame: false,
resizable: false,
backgroundColor: '#333333',
'node-integration': true
});
mainWindow.loadURL(path.join(__dirname, '/index.html'));
mainWindow.on('closed', function() {
mainWindow = null;
});
});
default.js(它处理窗口按钮:最小化、最大化和关闭):
const remote = require('electron').remote;
(function(){
function init(){
document.getElementById('minimize-btn').addEventListener('click', function(){
var window = remote.getCurrentWindow();
window.minimize();
});
document.getElementById('maximize-btn').addEventListener('click', function(){
var window = remote.getCurrentWindow();
if (!window.isMaximized()) {
window.maximize();
} else {
window.unmaximize();
}
});
document.getElementById('close-btn').addEventListener('click', function(){
var window = remote.getCurrentWindow();
window.close();
});
}
init();
})();
感谢您的帮助!
最佳答案
我刚刚使用 Windows 10 在我自己的 Electron 应用程序上检查了此功能,它没有与任务栏重叠,即使我有一个具有几乎完全相同的代码的函数:
function toggleMaximize() {
var window = remote.getCurrentWindow();
if(window.isMaximized()) {
window.unmaximize();
} else {
window.maximize();
}
这些是我的 BrowserWindow 设置,也非常相似:
mainWindow = new BrowserWindow({
width: windowState.width,
height: windowState.height,
x: windowState.x,
y: windowState.y,
show: false,
frame: false,
transparent: false
});
其中 windowState 仅存储/恢复应用程序窗口以前的位置和大小。
关于javascript - Electron:最大化的浏览器窗口与窗口的任务栏重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46795199/