久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

Electron.js 如何最小化/關閉系統托盤的窗口并從托

Electron.js How to minimize/close window to system tray and restore window back from tray?(Electron.js 如何最小化/關閉系統托盤的窗口并從托盤恢復窗口?)
本文介紹了Electron.js 如何最小化/關閉系統托盤的窗口并從托盤恢復窗口?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我希望我的 Electron.js 應用程序存在于系統托盤上,并且每當用戶想要做某事時他們可以從系統托盤恢復做一些事情并將其最小化/關閉回到系統托盤.我該怎么做?

I want my Electron.js application to live on system tray and whenever the user wants to do something they can restore from the system tray do something and minimize/close it back to system tray. How do i do that?

我從文檔中看到了 tray 部分,但對實現我想要的沒有多大幫助.

I've seen the tray section from the documentation but doesn't help much to achieve what i want.

這是我目前在 main.js 文件中得到的內容

Here is what i got so far on the main.js file

var application = require('app'),
    BrowserWindow = require('browser-window'),
    Menu = require('menu'), 
    Tray = require('tray'); 
application.on('ready', function () {
    var mainWindow = new BrowserWindow({
        width: 650,
        height: 450,
        'min-width': 500,
        'min-height': 200,
        'accept-first-mouse': true,
        // 'title-bar-style': 'hidden',
        icon:'./icon.png'
    });
    mainWindow.loadUrl('file://' + __dirname + '/src/index.html');
    mainWindow.on('closed', function () {
        mainWindow = null;
    });
    mainWindow.setMenu(null);

    var appIcon = null;
    appIcon = new Tray('./icon-resized.png');
    var contextMenu = Menu.buildFromTemplate([
        { label: 'Restore', type: 'radio' }
    ]);
    appIcon.setToolTip('Electron.js App');
    appIcon.setContextMenu(contextMenu);
});

更新:

我找到了這個 menubar 存儲庫,但它在 linux 上無法正常工作.

I found this menubar repo, but it won't work as expected on linux.

推薦答案

其實我很久以前就想出來了,但是對于遇到同樣問題的人來說,這是一種可以實現最小化到 tray 并從 tray 恢復.訣竅是捕捉 closeminimize 事件.

I actually figured it out a long time ago but for folks who encounter the same problem here is one way you could achieve minimizing to tray and restoring from tray. The trick is to catch the close and minimize events.

var BrowserWindow = require('browser-window'),

var mainWindow = new BrowserWindow({
    width: 850,
    height: 450,
    title: "TEST",
    icon:'./icon.png'
});

mainWindow.on('minimize',function(event){
    event.preventDefault();
    mainWindow.hide();
});

mainWindow.on('close', function (event) {
    if(!application.isQuiting){
        event.preventDefault();
        mainWindow.hide();
    }

    return false;
});

并從 Tray 恢復

var contextMenu = Menu.buildFromTemplate([
    { label: 'Show App', click:  function(){
        mainWindow.show();
    } },
    { label: 'Quit', click:  function(){
        application.isQuiting = true;
        application.quit();
    } }
]);

這篇關于Electron.js 如何最小化/關閉系統托盤的窗口并從托盤恢復窗口?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

discord.js v12: How do I await for messages in a DM channel?(discord.js v12:我如何等待 DM 頻道中的消息?)
how to make my bot mention the person who gave that bot command(如何讓我的機器人提及發出該機器人命令的人)
How to fix Must use import to load ES Module discord.js(如何修復必須使用導入來加載 ES 模塊 discord.js)
How to list all members from a specific server?(如何列出來自特定服務器的所有成員?)
Discord bot: Fix ‘FFMPEG not found’(Discord bot:修復“找不到 FFMPEG)
Welcome message when joining discord Server using discord.js(使用 discord.js 加入 discord 服務器時的歡迎消息)
主站蜘蛛池模板: 天堂男人av| 国产免费一区二区 | 国产成人综合一区二区三区 | 国产精品永久久久久 | 成人午夜性成交 | 一级美国黄色片 | 亚洲人免费视频 | 欧美日韩在线免费观看 | 在线观看毛片网站 | 黄色一级免费 | 一区二区三区av | 国产第一亚洲 | 亚洲一区二区三区观看 | 国产无人区一区二区三区 | 91久色| 亚洲激情专区 | 亚洲精品欧美一区二区三区 | 三极网站 | 精品国产乱码一区二区三 | 久久逼逼 | 巨大荫蒂视频欧美另类大 | 91精品国产综合久久久久 | 天天干免费视频 | 国产美女黄色片 | 国产精品久久久久久久久久99 | 超碰婷婷 | 欧美日韩一区二区三区四区 | 国产欧美日韩在线观看 | 国产久 | 久久99精品视频 | 欧美一级片在线观看 | 99精品久久久久久中文字幕 | 久久美女视频 | 手机看片在线播放 | 国产片淫级awww | 91 视频网站| 久久com| 日本免费视频在线观看 | 欧美情趣视频 | 中文字幕亚洲视频 | 女朋友的闺蜜3韩国三级 |