如何让Windows将EXIT格式化为系统托盘?

时间:2010-08-25 07:56:17

标签: winforms

我的意思是退出到系统托盘,而不是最小化到系统托盘,即当您单击Windows窗体右上角的“红叉”时,而不是关闭应用程序,它会在系统托盘中运行。 / p>

3 个答案:

答案 0 :(得分:3)

您可以挂钩Form Closing事件并取消关闭事件并隐藏表单

示例代码

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            e.Cancel = true;
            this.Hide();
        }

答案 1 :(得分:2)

处理FormClosing事件,阻止关闭(e.Cancel = true),而不是minimize to the system tray,就像你一样,minimizing to the system tray

当然,您必须具备以下条件:关闭表单不会最小化到系统托盘。例如,跟踪状态以及表单是否已经最小化,然后允许表单实际关闭。

答案 2 :(得分:1)

无法“退出”系统托盘,必须运行带有消息队列的进程才能让图标显示在托盘中并正常运行(例如,将鼠标悬停在托盘上时不会消失)

adobe和其他人处理此问题的方法是使用一个单独的应用程序来执行系统托盘图标,当您单击它并且您的应用程序未运行时它启动它,如果应用程序已在运行,它会将其带到前景。