任务栏自定义
弹出列表
Windows 允许应用程序自定义一个菜单栏,当用户右键单击任务栏中的应用图标及可显示该列表。 该上下文菜单被称为 。 根据 MSDN 叙述,你应该从 JumpList 的 Tasks
分类中指定自定义动作。
注意: 上面的截图是Microsoft Edge的任务栏示例
MacOS里的docker menu是菜单项,然而windows里的user tasks只是一个快捷方式。 举个栗子,当用户点击task的时候,程序将会执行特定的参数。
你可以使用 API 来设置你的应用中的用户任务.
示例
设置用户任务
按照 快速启动指引 启动一个应用, 使用下面的代码更新 main.js
文件:
清空任务列表
要想清除任务列表, 你需要在 main.js
文件内调用 app.setUserTasks
方法, 参数是空数组即可
const { app } = require('electron')
app.setUserTasks([])
注意:即使你的应用关闭,用户任务仍然会被显示,因此在你的应用被卸载之前,任务的图标和程序的路径必须是存在的。
引自 :
注:上面的屏幕截图是 Windows 媒体播放器的缩略图工具栏示例
要在应用程序中设置缩略图工具栏,可以使用 BrowserWindow.setThumbarButtons
示例
设置缩略图工具栏
按照 启动一个应用, 使用下面的代码更新 文件:
清除缩略图工具栏
要清除缩略图工具栏按钮,您需要在 main.js
文件调用 BrowserWindow.setThumbaritons
函数设置为空数组。
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
win.setThumbarButtons([])
在 Windows,任务栏按钮可以使用小型叠加层显示应用程序状态。
引自 MSDN:
你可以使用 API来设置窗口的叠加层图标
示例
按照 启动一个应用, 使用下面的代码更新 main.js
文件:
在Windows上,你可以突出显示任务栏按钮以获得用户的关注。 这与在 macOS 上 dock 弹跳图标相似。
引自 :
通常, 会闪现一个窗口, 通知用户该窗口需要注意, 但是该窗口当前没有键盘焦点。
想要刷新 BrowserWindow 任务栏按钮, 你可以使用 BrowserWindow.flashFrame API.
示例
按照 快速启动指引 启动一个应用, 使用下面的代码更新 文件:
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
win.once('focus', () => win.flashFrame(false))
win.flashFrame(true)
注意:别忘了调用
win.flashFramework(false)
来关闭闪烁。 在上面的示例中, 当窗口进入焦点时会调用它, 但您可能会使用超时或其他一些事件来禁用它。