「桌面」(C#)WinForm程序缩小到右下角通知区域

1、中止程序的结束

首先点击窗口右上角“X”时,先让程序不要关闭:

添加主窗体的 FormClosing 方法。

即点击窗体右上角的“X”时要执行的操作,这里首先取消程序的“结束”命令

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
	//取消关闭窗口
	e.Cancel = true;
	//最小化主窗口
	this.WindowState = FormWindowState.Minimized;
	//任务栏取消图标
	this.ShowInTaskbar = false;
}

2、添加通知栏图标

不关闭干什么呢,就是最小化,并在右下角显示图标。

在工具箱中找到【NotifyIcon】控件,然后托动到主窗口中(设计器中)
在这里插入图片描述
他会出现在设计器中的下方
在这里插入图片描述
主要修改它的几个属性:
(Name)属性 --(编程规范性修改)
Icon —图标,就是在右下角时的的图标
Text —鼠标移动到上面时 显示的文字
Visible — 是否可见 设置为“True”

我在【阿里巴巴矢量图标库】中随便找一个可爱的图标,然后稍微处理一下,转换成“*.ico”文件。
在这里插入图片描述
最终效果时这样:
在这里插入图片描述

3、窗口恢复和退出

点“X”不是退出而是隐藏,那隐藏后怎么恢复?又怎么真的结束呢?

3.1 恢复窗口

首先给“NotifyIcon”添加双击(或者单击)事件。

通过双击或在其属性窗口的事件列表中进行添加

代码如下:

//双击右下角图标就恢复窗口正常大小 。
private void NotifyIcon_Main_MouseDoubleClick(object sender, MouseEventArgs e)
{
	if (this.WindowState == FormWindowState.Minimized)
	{
		//还原窗体
		this.WindowState = FormWindowState.Normal;
		//任务显示
		this.ShowInTaskbar = true;
	}
	//激活窗体
	this.Activate();
}

3.2、 添加右键菜单栏和退出按钮
程序的正常关闭已经被我们改掉了,那么要怎么才能关闭呢。
方法是添加右键菜单,在菜单中加入【关闭】按钮。
类似于这样:

在这里插入图片描述
如何添加右键菜单呢?

在工具箱中找到【ContextMenuStrip】控件,拖入主窗口,然后添加【退出】按钮
在这里插入图片描述
并给该“退出”按钮添加事件,即“结束”程序:

private void TSMenuItem_Exit_Click(object sender, EventArgs e)
{
	this.Dispose();
	this.Close();
}

最终运行效果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值