【C#】关闭程序显示在任务栏右下角
1 前言
2
3 一般From最小化会使Form都会缩小到任务栏上,但是是以Form的标题栏的形式显示。
4
5 实现将程序缩小到右下角的任务栏,还需要给Form添加一个NotifyIcon控件,代码如下
6
7 if (this.WindowState == FormWindowState.Normal && this.Visible == true)
8 {
9 this.notifyIcon1.Visible = true;//在通知区显示Form的Icon
10 this.WindowState = FormWindowState.Minimized;
11 this.Visible = false;
12 this.ShowInTaskbar = false;//使Form不在任务栏上显示
13 }
14 实现方法
15
16 WinForm窗口最小化到系统托盘右击托盘图标弹出退出菜单
17
18 1、在Form上加Notifyicon控件myicon,为控件的属性Icon添加一个icon图标,Text为鼠标在图标上时显示的tip。
19
20 2、在From1_FormClosing中设置Form的ShowInTaskbar属性
21
22 3、在myicon_MouseClick事件中设置Form的ShowInTaskbar和WindowState属性
23
24 4、添加ContextMenuStrip控件myMenu,右键托盘图标弹出菜单,设置myIcon的ContextMenuStrip属性为myMenu。在myMenu中添加item(退出)。
25
26 myIcon在MouseClick事件中,判断右键点击并弹出ContextMenuStrip。
27
28 代码如下:
29
30 private void Form1_FormClosing(object sender, FormClosingEventArgs e)
31 {
32 if (e.CloseReason == CloseReason.UserClosing)//当用户点击窗体右上角X按钮或(Alt + F4)时 发生
33 {
34 e.Cancel = true;
35 this.ShowInTaskbar = false;
36 this.myIcon.Icon = this.Icon;
37 this.Hide();
38 }
39 }
40
41 private void myIcon_MouseClick(object sender, MouseEventArgs e)
42 {
43 if (e.Button == MouseButtons.Right)
44 {
45 myMenu.Show();
46 }
47
48 if (e.Button == MouseButtons.Left)
49 {
50 this.Visible = true;
51 this.WindowState = FormWindowState.Normal;
52 }
53 }
54
55 private void toolMenuCancel_Click(object sender, EventArgs e)
56 {
57 Application.Exit();
58 }
59
60
61 ---------------------
62 作者:Jackey_姜晶
63 来源:CSDN
64 原文:https://blog.csdn.net/jianghappyboy/article/details/79219976