window.maximize() 在 window 最小化时失败 electron
window.maximize() fails when window is minimized electron
我创建了一个带有托盘图标的电子应用程序。
当我右键单击托盘图标时,我会显示一个包含 4 个选项的菜单:
- 最小化
- 最大化
- 重启
- 退出
这是创建托盘图标的代码:
trayIcon = new Tray('icons/foo.png');
const trayMenuTemplate = [{
label: 'Maximize',
click:(_,window)=>{
window.maximize();
}
}, {
label: 'Minimize',
click:(_,window)=>{
window.minimize();
}
}, {
label: 'Restart'
}, {
type: 'separator'
}, {
label: 'Quit',
role: 'quit'
}];
但是我有一个 problem.When 我单击最小化然后单击最大化我收到一条错误消息说 Cannnot read property maximize of null
有什么想法吗?谢谢
您可以随时检查它是否已最小化并将其恢复为解决方法。我觉得这没什么大不了的。
要检查和恢复它,您可以使用这个:
if (window.isMinimized()) {
window.restore();
}
整个事情是这样的:
{
label: 'Maximize',
click:(_,window)=>{
if (window.isMinimized()) {
window.restore();
}
window.maximize();
}
}
托盘未绑定到任何 BrowserWindow,因此 window
为空。如果您在主进程中创建了托盘菜单,则可以只使用 mainWindow
引用,如果您在渲染器中,则可以使用 remote.getCurrentWindow()
。
我创建了一个带有托盘图标的电子应用程序。 当我右键单击托盘图标时,我会显示一个包含 4 个选项的菜单:
- 最小化
- 最大化
- 重启
- 退出
这是创建托盘图标的代码:
trayIcon = new Tray('icons/foo.png');
const trayMenuTemplate = [{
label: 'Maximize',
click:(_,window)=>{
window.maximize();
}
}, {
label: 'Minimize',
click:(_,window)=>{
window.minimize();
}
}, {
label: 'Restart'
}, {
type: 'separator'
}, {
label: 'Quit',
role: 'quit'
}];
但是我有一个 problem.When 我单击最小化然后单击最大化我收到一条错误消息说 Cannnot read property maximize of null
有什么想法吗?谢谢
您可以随时检查它是否已最小化并将其恢复为解决方法。我觉得这没什么大不了的。
要检查和恢复它,您可以使用这个:
if (window.isMinimized()) {
window.restore();
}
整个事情是这样的:
{
label: 'Maximize',
click:(_,window)=>{
if (window.isMinimized()) {
window.restore();
}
window.maximize();
}
}
托盘未绑定到任何 BrowserWindow,因此 window
为空。如果您在主进程中创建了托盘菜单,则可以只使用 mainWindow
引用,如果您在渲染器中,则可以使用 remote.getCurrentWindow()
。