当前位置:K88软件开发文章中心编程工具Electron → 文章内容

Electron Tray 模块

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-24 10:21:21

由 Loen 创建,youj 最后一次修改 2016-10-08 用一个 Tray 来表示一个图标,这个图标处于正在运行的系统的通知区 ,通常被添加到一个 context menu 上.const electron = require('electron');const app = electron.app;const Menu = electron.Menu;const Tray = electron.Tray;var appIcon = null;app.on('ready', function(){ appIcon = new Tray('/path/to/my/icon'); var contextMenu = Menu.buildFromTemplate([ { label: 'Item1', type: 'radio' }, { label: 'Item2', type: 'radio' }, { label: 'Item3', type: 'radio', checked: true }, { label: 'Item4', type: 'radio' } ]); appIcon.setToolTip('This is my application.'); appIcon.setContextMenu(contextMenu);});平台限制:在 Linux, 如果支持应用指示器则使用它,否则使用 GtkStatusIcon 代替.在 Linux ,配置了只有有了应用指示器的支持, 你必须安装 libappindicator1 来让 tray icon 执行.应用指示器只有在它拥有 context menu 时才会显示.当在linux 上使用了应用指示器,将忽略点击事件.在 Linux,为了让单独的 MenuItem 起效,需要再次调用 setContextMenu .例如:contextMenu.items[2].checked = false;appIcon.setContextMenu(contextMenu);如果想在所有平台保持完全相同的行为,不应该依赖点击事件,而是一直将一个 context menu 添加到 tray icon.Class: TrayTray 是一个 事件发出者.new Tray(image)image NativeImage创建一个与 image 相关的 icon.事件Tray 模块可发出下列事件:注意: 一些事件只能在特定的os中运行,已经标明.Event: 'click'event EventaltKey BooleanshiftKey BooleanctrlKey BooleanmetaKey Booleanbounds Object - tray icon 的 bounds.x Integery Integerwidth Integerheight Integer当tray icon被点击的时候发出事件.注意: bounds 只在 OS X 和 Windows 上起效.Event: 'right-click' OS X Windowsevent EventaltKey BooleanshiftKey BooleanctrlKey BooleanmetaKey Booleanbounds Object - tray icon 的 bounds.x Integery Integerwidth Integerheight Integer当tray icon被鼠标右键点击的时候发出事件.Event: 'double-click' OS X Windowsevent EventaltKey BooleanshiftKey BooleanctrlKey BooleanmetaKey Booleanbounds Object - tray icon 的 bounds.x Integery Integerwidth Integerheight Integer当tray icon被双击的时候发出事件.Event: 'balloon-show' Windows当tray 气泡显示的时候发出事件.Event: 'balloon-click' Windows当tray 气泡被点击的时候发出事件.Event: 'balloon-closed' Windows当tray 气泡关闭的时候发出事件,因为超时或人为关闭.Event: 'drop' OS X当tray icon上的任何可拖动项被删除的时候发出事件.Event: 'drop-files' OS Xeventfiles Array - 已删除文件的路径.当tray icon上的可拖动文件被删除的时候发出事件.Event: 'drag-enter' OS X当一个拖动操作进入tray icon的时候发出事件.Event: 'drag-leave' OS X当一个拖动操作离开tray icon的时候发出事件. Emitted when a drag operation exits the tray icon.Event: 'drag-end' OS X当一个拖动操作在tray icon上或其它地方停止拖动的时候发出事件.方法Tray 模块有以下方法:Note: 一些方法只能在特定的os中运行,已经标明.Tray.destroy()立刻删除 tray icon.Tray.setImage(image)image NativeImage让 image 与 tray icon 关联起来.Tray.setPressedImage(image) OS Ximage NativeImage当在 OS X 上按压 tray icon 的时候, 让 image 与 tray icon 关联起来.Tray.setToolTip(toolTip)toolTip String为 tray icon 设置 hover text.Tray.setTitle(title) OS Xtitle String在状态栏沿着 tray icon 设置标题.Tray.setHighlightMode(highlight) OS Xhighlight Boolean当 tray icon 被点击的时候,是否设置它的背景色变为高亮(blue).默认为 true.Tray.displayBalloon(options) Windowsoptions Objecticon NativeImagetitle Stringcontent String展示一个 tray balloon.Tray.popUpContextMenu([menu, position]) OS X Windowsmenu Menu (optional)position Object (可选) - 上托位置.x Integery Integer从 tray icon 上托出 context menu . 当划过 menu 的时候, menu 显示,代替 tray 的 context menu .position 只在 windows 上可用,默认为 (0, 0) .Tray.setContextMenu(menu)menu Menu为这个 icon 设置 context menu .

Electron Tray 模块