我的意思是退出到系统托盘,而不是最小化到系统托盘,即当你点击Windows窗体右上角的“红叉”时,它不是关闭应用程序,而是在系统托盘中运行。
发布于 2010-08-25 16:05:38
您可以挂钩到窗体关闭事件,然后取消关闭事件并隐藏窗体
示例代码
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
this.Hide();
}发布于 2010-08-25 16:07:39
处理FormClosing事件,阻塞Close (e.Cancel = true),并改为minimize to the system tray,就像您是minimizing to the system tray一样。
当然,你必须有一个条件,在这种情况下,关闭窗体不会最小化到系统托盘。例如,跟踪状态,如果窗体已经最小化,则允许窗体实际关闭。
发布于 2010-08-25 16:09:24
无法“退出”到系统托盘,必须运行具有消息队列的进程才能允许图标出现在托盘中并正常运行(例如,当您将鼠标悬停在其上时不会消失)
adobe和其他人处理这个问题的方式是有一个单独的应用程序,它只做系统托盘图标,当你点击它时,你的应用程序没有运行,它会启动它,如果应用程序已经在运行,它会把它带到前台。
https://stackoverflow.com/questions/3563889
复制相似问题