首先,添加界面响应最小化的按钮事件:(ps:直接上网搜的图片,添加的事件)
1 private void pictureBox2_Click(object sender, EventArgs e) 2 { 3 this.WindowState = FormWindowState.Minimized;//最小化 4 5 }
重要部分:添加notifyIcon控件
1 private void notifyIcon_Click(object sender, EventArgs e)
2 { 3 4 5 if (this.WindowState != FormWindowState.Minimized) 6 { 7 this.WindowState = FormWindowState.Minimized; 8 } 9 else 10 { 11 this.WindowState = FormWindowState.Maximized; 12 } 13 14 }
在From_Load中添加事件内容:
1 private void Login_Load(object sender, EventArgs e) 2 { 3 //初始化图片属性 4 notifyIcon.Icon = new Icon("test.ico"); 5 //初始化是不可见的 6 notifyIcon.Visible = false; 7 //为notifyIcon添加Click事件 8 notifyIcon.Click += new System.EventHandler(this.notifyIcon_Click); 9 //为当前窗体添加窗体形状改变响应函数 10 this.SizeChanged += new System.EventHandler(this.Login_SizeChanged); 11 }
使用:Resize事件进行状态的判断:
1 private void Login_Resize(object sender, EventArgs e) 2 { 3 //如果当前状态的状态为最小化,则显示状态栏的程序托盘 4 if (this.WindowState == FormWindowState.Minimized) 5 { 6 7 //不在Window任务栏中显示 8 this.ShowInTaskbar = true; 9 //使图标在状态栏中显示 10 this.notifyIcon.Visible = true; 11 } 12 }