为什么电子的 window 没有隐藏?
Why electron's window is not hiding?
我是电子新手,我在电子应用程序中使用 BrowerWindow
创建了一个 window,并在构造函数中设置了 show: false
,但是 window 仍然当我执行应用程序时出现。请帮助我。
电子版 - ^12.0.2
const {
app,
BrowserWindow,
ipcMain,
Menu
} = require('electron');
const url = require('url');
const path = require('path');
app.whenReady().then(() => {
createMainWindow();
app.on('activate', () => {
if (BrowserWindow.getAllWindows().length === 0) {
createMainWindow();
}
})
});
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit();
}
});
let mainWin;
function createMainWindow() {
mainWin = new BrowserWindow({
width: 800,
height: 600,
frame: false,
show: false,
icon: path.join(__dirname, '../src/assets/icons/png/64x64.png'),
webPreferences: {
nodeIntegration: true,
contextIsolation: false,
enableRemoteModule: true,
preload: path.join(__dirname, 'preload.js')
}
});
mainWin.loadFile(path.join(__dirname, '../renderers/index.html'));
mainWin.maximize();
}
问题是您正在调用 maximize()
。
见docs:
Maximizes the window. This will also show (but not focus) the window if it isn't being displayed already.
我想我不确定解决此问题的最佳方法是什么。在最大化 window 之后调用 hide()
是否可行?
也就是说,如果您不希望 window 可见,为什么还要最大化它?
我是电子新手,我在电子应用程序中使用 BrowerWindow
创建了一个 window,并在构造函数中设置了 show: false
,但是 window 仍然当我执行应用程序时出现。请帮助我。
电子版 - ^12.0.2
const {
app,
BrowserWindow,
ipcMain,
Menu
} = require('electron');
const url = require('url');
const path = require('path');
app.whenReady().then(() => {
createMainWindow();
app.on('activate', () => {
if (BrowserWindow.getAllWindows().length === 0) {
createMainWindow();
}
})
});
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit();
}
});
let mainWin;
function createMainWindow() {
mainWin = new BrowserWindow({
width: 800,
height: 600,
frame: false,
show: false,
icon: path.join(__dirname, '../src/assets/icons/png/64x64.png'),
webPreferences: {
nodeIntegration: true,
contextIsolation: false,
enableRemoteModule: true,
preload: path.join(__dirname, 'preload.js')
}
});
mainWin.loadFile(path.join(__dirname, '../renderers/index.html'));
mainWin.maximize();
}
问题是您正在调用 maximize()
。
见docs:
Maximizes the window. This will also show (but not focus) the window if it isn't being displayed already.
我想我不确定解决此问题的最佳方法是什么。在最大化 window 之后调用 hide()
是否可行?
也就是说,如果您不希望 window 可见,为什么还要最大化它?