//electron const electron = require( electron const app = electron.app; const path = require( path //用一个 Tray 来表明一个标志,这个标志处于正在运作的系统软件的通告区 ,一般被加上到一个 context menu 上. const Menu = electron.Menu; const Tray = electron.Tray; //托盘目标 var appTray = null; function createWindow() { // Create the browser window. mainWindow = new BrowserWindow({ width: 1000, height: 600, resizable: true, title: 将运用程序加上至系统软件托盘 , skipTaskbar:false //系统软件托盘右键菜单 var trayMenuTemplate = [ label: 设定 , click: function () {} //开启相应网页页面 label: 建议意见反馈 , click: function () {} label: 协助 , click: function () {} label: 有关手机微信 , click: function () {} label: 撤出手机微信 , click: function () { //ipc.send( close-main-window app.quit(); //系统软件托盘标志文件目录 trayIcon = path.join(__dirname, tray appTray = new Tray(path.join(trayIcon, app.ico //标志的左右文菜单 const contextMenu = Menu.buildFromTemplate(trayMenuTemplate); //设定此托盘标志的悬停提醒內容 appTray.setToolTip( This is my application. //设定此标志的左右文菜单 appTray.setContextMenu(contextMenu); // This method will be called when Electron has finished // initialization and is ready to create browser windows. // Some APIs can only be used after this event occurs. app.on( ready , createWindow);二、系统软件托盘程序右键菜单 就是流程一申明 trayMenuTemplate 目标,添加托盘左右文菜单 //设定此标志的左右文菜单 appTray.setContextMenu(contextMenu); 便可, 而进到右键菜单相应网页页面就要涉及到主进程与3D渲染进程互动.对进程不掌握的可参照之前写的blog主进程与3D渲染进程之间通讯 三、托盘拨电话信息的闪动 像手机微信一样,消息推送一条未读新信息闪动,其基本原理不一样時刻标志切换,一张全透明与不全透明标志切换。
app.on( window-all-closed , function() { // On OS X mon for applications and their menu bar // to stay active until the user quits explicitly with Cmd + Q if (process.platform !== darwin ) { app.quit()
//系统软件托盘标志闪动 var count = 0,timer = null; timer=setInterval(function() { count++; if (count%2 == 0) { tray.setImage(path.join(trayIcon, app.ico )) } else { tray.setImage(path.join(trayIcon, appa.ico )) }, 600); //多点击 1.主对话框显示信息掩藏切换 2.消除闪动 tray.on( click , function(){ if(!!timer){ tray.setImage(path.join(appTray, app.ico )) //主对话框显示信息掩藏切换 mainWindow.isVisible() ? mainWindow.hide() : mainWindow.show();四、添加未读的声频 若对方推送一条未读信息,提醒客户滴滴滴声音
//playAudio function playAudio(){ var audio = new Audio(__dirname + /tray/app.wav audio.play(); setTimeout(function(){ console.log( 中止播发.... audio.pause();// 中止 }, 800) playAudio();详细编码demo
//electron const electron = require( electron const app = electron.app; const path = require( path //用一个 Tray 来表明一个标志,这个标志处于正在运作的系统软件的通告区 ,一般被加上到一个 context menu 上. const Menu = electron.Menu; const Tray = electron.Tray; //托盘目标 var appTray = null; //createWindow function createWindow() { // Create the browser window. mainWindow = new BrowserWindow({ width: 1000, height: 600, resizable: true, title: 将运用程序加上至系统软件托盘 , skipTaskbar:false //系统软件托盘右键菜单 var trayMenuTemplate = [ label: 设定 , click: function () {} //开启相应网页页面 label: 建议意见反馈 , click: function () {} label: 协助 , click: function () {} label: 有关手机微信 , click: function () {} label: 撤出手机微信 , click: function () { //ipc.send( close-main-window app.quit(); //系统软件托盘标志文件目录 trayIcon = path.join(__dirname, tray appTray = new Tray(path.join(trayIcon, app.ico //标志的左右文菜单 const contextMenu = Menu.buildFromTemplate(trayMenuTemplate); //设定此托盘标志的悬停提醒內容 appTray.setToolTip( This is my application. //设定此标志的左右文菜单 appTray.setContextMenu(contextMenu);转载:zjf-1992/?utm_medium=referral utm_source=debugrun
// This method will be called when Electron has finished // initialization and is ready to create browser windows. // Some APIs can only be used after this event occurs. app.on( ready , createWindow); // Quit when all windows are closed. app.on( window-all-closed , function() { // On OS X mon for applications and their menu bar // to stay active until the user quits explicitly with Cmd + Q if (process.platform !== darwin ) { app.quit()
electron程序显示信息在右下角托盘由懒人建网站搜集梳理,您能够随意散播,请积极带上本文连接
懒人建网站就是完全免费共享,觉得有效就多来适用一下,沒有能帮到您,懒人也只能表明遗憾,期待有一天能帮到您。
---------