ホームページ >バックエンド開発 >C++ >.NET Windows フォームで最小限のシステム トレイ アプリケーションを作成する方法

.NET Windows フォームで最小限のシステム トレイ アプリケーションを作成する方法

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-14 18:11:44119ブラウズ

How to Create a Minimal System Tray Application in .NET Windows Forms?

.NET Windows フォーム システム トレイ最小化アプリケーションの構築

システム トレイに最小化できる従来のアプリケーションとは異なり、システム トレイのみに常駐する Windows フォーム アプリケーションには異なるアプローチが必要です。この記事は、そのような最小限のアプリケーションを構築する手順を案内することを目的としています。

解決策:

このタイプのアプリケーションの鍵は、標準のアプリケーション ループを開始するデフォルトの Application.Run() メソッドをオーバーライドすることです。代わりに、ApplicationContext クラスを継承するカスタム クラスを作成します。 ApplicationContext のコンストラクターで、システム トレイ内のアイコンを表す NotifyIcon インスタンスを初期化し、その動作を処理します。

コード:

実装する必要があるコードの例は次のとおりです:

<code class="language-csharp">static class Program
{
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);

        Application.Run(new MyCustomApplicationContext());
    }
}

public class MyCustomApplicationContext : ApplicationContext
{
    private NotifyIcon trayIcon;

    public MyCustomApplicationContext()
    {
        // 初始化托盘图标
        trayIcon = new NotifyIcon()
        {
            Icon = Resources.AppIcon,
            ContextMenu = new ContextMenu(new MenuItem[] {
                new MenuItem("退出", Exit)
            }),
            Visible = true
        };
    }

    void Exit(object sender, EventArgs e)
    {
        // 隐藏托盘图标,否则它将一直显示到用户将鼠标悬停在其上
        trayIcon.Visible = false;

        Application.Exit();
    }
}</code>

このコードは、アイコン、ツールチップ、およびアプリケーションを終了するための右クリック メニュー オプションを備えた、システム トレイにのみ存在するアプリケーションを作成します。

以上が.NET Windows フォームで最小限のシステム トレイ アプリケーションを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。