- 在Form上添加
notifyicon
控件并命名为myIcon
,为控件的属性Icon
添加一个icon图标, Text为鼠标悬停在图标上时显示的名字。 - 添加
ContextMenuStrip
控件并命名为myMenu
,此控件作为右键托盘图标弹出菜单,设置myIcon
的ContextMenuStrip
属性为myMenu
。在myMenu
中添加item(退出)。
using System;
using System.Windows.Forms;
namespace 最小化到托盘
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
e.Cancel = true;
this.ShowInTaskbar = false;
this.Hide();
}
}
private void myIcon_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
myMenu.Show();
}
if (e.Button == MouseButtons.Left)
{
this.Show();
this.WindowState = FormWindowState.Normal;
this.ShowInTaskbar = true;
}
}
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void Form1_SizeChanged(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.ShowInTaskbar = false;
this.Hide();
}
}
}
}