簡體   English   中英

托盤圖標不顯示

[英]Tray Icon not showing up

我已經在我的程序中添加了一個托盤圖標,該圖標應該會顯示並具有用於切換某些功能的按鈕。 但是,托盤圖標未顯示。

我檢查過是否包含System.Windows.Forms ,在創建托盤圖標后調用了Application.Run()方法, NotifyIcon對象的Visible屬性是否設置為 true,Icon 屬性是否設置正確(已嘗試幾個不同的,SystemIcons,我的應用程序圖標,一個指定的文件),並且 Text 屬性設置正確。

我查看了各種 SO 問題和答案都無濟於事,它是一個針對.NET Framework 4.7.2的 Windows 應用程序,如果重要的話,它不使用表單。

using System;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace SomethingSomething
{
    internal static class Program
    {
        static NotifyIcon trayIcon;
        [STAThread]
        static void Main()
        {
            // Start the webserver
            StartWebServer().Wait();

            // Create the tray icon
            CreateTrayIcon();

            // Needed for tray icon
            Application.Run();
        }

        static void CreateTrayIcon()
        {
            trayIcon = new NotifyIcon
            {
                Visible = true,
                Icon = SystemIcons.Information,
                Text = "Current Song" + currentSong
            };

            var menu = new ContextMenu();
            var toggleRPCMenuItem = new MenuItem("Toggle RPC", (s, e) => ToggleRPC());
            var toggleAdsMenuItem = new MenuItem("Toggle Ads", (s, e) => ToggleAds());
            var exitMenuItem = new MenuItem("Exit", (s, e) => Exit());
            menu.MenuItems.Add(toggleRPCMenuItem);
            menu.MenuItems.Add(toggleAdsMenuItem);
            menu.MenuItems.Add(exitMenuItem);
            trayIcon.ContextMenu = menu;
        }
    }
}

原來我有一個在CreateTrayIcon(); :

StartWebServer().Wait();

這會阻止其余代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM