我试图在Electron js for Windows中添加自定义标题栏。为了隐藏默认标题栏,我写了:
mainWindow = new BrowserWindow({ frame: false });
但是上面的代码也隐藏了菜单栏。我只希望默认的标题栏消失,而不影响菜单栏。有没有办法做到这一点?
rt4zxlrg1#
将Electron的frame选项设置为false将创建一个无框窗口。无框架窗口没有标题栏或菜单。这被称为没有chrome。从这里,您可以建立自己的自定义标题栏与最小化,恢复,最大化和关闭按钮功能。如果您的应用程序被设计为在不同的操作系统上工作,那么您可能希望复制按钮位置,形状和功能。不幸的是,使用无框架窗口的一个副作用是,您确实会丢失本机菜单。同样,这可以使用HTML,CSS和JS重新创建。也就是说,如果您再次希望模仿多个特定的操作系统并忠实于其设计,则需要进行一些工作。或者,您可以在所有操作系统中使用一种风格的标题栏和菜单设计。选择是你作为一个设计师。总之,虽然可以实现上述所有内容,但正确设置可能很耗时。因此,您确实需要权衡自定义标题栏是否值得实现。
frame
false
1条答案
按热度按时间rt4zxlrg1#
将Electron的
frame
选项设置为false
将创建一个无框窗口。无框架窗口没有标题栏或菜单。这被称为没有chrome。
从这里,您可以建立自己的自定义标题栏与最小化,恢复,最大化和关闭按钮功能。如果您的应用程序被设计为在不同的操作系统上工作,那么您可能希望复制按钮位置,形状和功能。
不幸的是,使用无框架窗口的一个副作用是,您确实会丢失本机菜单。同样,这可以使用HTML,CSS和JS重新创建。也就是说,如果您再次希望模仿多个特定的操作系统并忠实于其设计,则需要进行一些工作。
或者,您可以在所有操作系统中使用一种风格的标题栏和菜单设计。选择是你作为一个设计师。
总之,虽然可以实现上述所有内容,但正确设置可能很耗时。因此,您确实需要权衡自定义标题栏是否值得实现。