1

現在、Windows アプリケーションで作業しています。

フォームを閉じるときにトレイ アイコンを作成しました。トレイ アイコンはシステム トレイに表示されます。

左クリックすると、トレイ アイコン フォームが通常の状態に最大化されます。

右クリック イベントはリリース モードでは機能しませんが、デバッグ モードでは機能します。

このアプリケーションをビルドした後、正しいイベントが機能しないため、デバッグ モードから output.exe ファイルを実行します。

どんな助けでも大歓迎です。前もって感謝します。

インフォームロード

private void MainRelease_Load(object sender, EventArgs e)
{
    TrayIcon.Visible = false;
    TrayMenu.Items.Add("Exit");
    TrayMenu.Items[0].Click += new System.EventHandler(this.Dispose_Click);
}

ボタンで閉じるイベント

   private void btnClose_Click(object sender, EventArgs e)
{
    this.WindowState = FormWindowState.Minimized;
    TrayIcon.Visible = true;
    ShowInTaskbar = false;
}

トレイ アイコンでマウス クリック イベント

private void TrayIcon_MouseClick(object sender, MouseEventArgs e)
{
    if (e.Button == System.Windows.Forms.MouseButtons.Left)
    {
        this.WindowState = FormWindowState.Normal;
        TrayIcon.Visible = false;
        ShowInTaskbar = true;

    }
    if (e.Button == System.Windows.Forms.MouseButtons.Right)
    {
        TrayMenu.Show(Cursor.Position.X, Cursor.Position.Y);
    }
}

トレイ メニューの破棄イベント

private void Dispose_Click(object Sender, EventArgs e)
{
    TrayIcon.Visible = false;
    TrayIcon.Icon = null;
    TrayIcon.Dispose();
    Application.Exit();
}

リリース モードでは、トレイ アイコン マウスの右クリック イベントが機能しません。しかし、デバッグモードでは機能しています。

この問題を解決するために私を助けてください。

4

1 に答える 1