如何将应用程序最小化到系统托盘



如何将应用程序最小化到系统托盘?

我的应用程序是在C#.Net中开发的。我写了一些代码,这样,如果在从组合框中选择一些设置后单击按钮,Form就会最小化到系统托盘。单击一次后,该按钮将被禁用。因此,我不能再次使用该按钮来最小化表单。当RichTextBox中填充了从COM端口接收到的数据时,会弹出Form。一切正常。

问题是,当最小化的表单在接收到串行数据后弹出时,我需要一个选项来再次将其最小化回系统托盘,以便在RichTextBox中填充新数据时再次弹出。

每当Form弹出时,我不想再添加一个按钮来执行此操作。还有别的办法吗?

如果有人提供代码,让应用程序在点击标题栏中的最小化按钮时最小化到系统托盘,那会更好。

我只想知道我必须使用的函数名,比如private Form1_Resize()。实际上,Resize事件不能使用,因为它在窗体最小化或最大化时触发。我需要它只在窗体最小化时触发。

有成千上万的HowTo,你试过谷歌吗?仅举一个例子:http://alperguc.blogspot.de/2008/11/c-system-tray-minimize-to-tray-with.html

添加一个键来最小化表单如何?

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
{
this.WindowState = FormWindowState.Minimized;
}
}
private void frmMain_Resize(object sender, EventArgs e)
{
if (FormWindowState.Minimized == this.WindowState)
{
mynotifyicon.Visible = true;
mynotifyicon.ShowBalloonTip(500);
this.Hide();
}
else if (FormWindowState.Normal == this.WindowState)
{
mynotifyicon.Visible = false;
}
}

最新更新