首先点击窗口右上角“X”时,先让程序不要关闭:
添加主窗体的 FormClosing 方法。
即点击窗体右上角的“X”时要执行的操作,这里首先取消程序的“结束”命令
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
//取消关闭窗口
e.Cancel = true;
//最小化主窗口
this.WindowState = FormWindowState.Minimized;
//任务栏取消图标
this.ShowInTaskbar = false;
}
不关闭干什么呢,就是最小化,并在右下角显示图标。
在工具箱中公共控件里面找到【NotifyIcon】控件,然后托动到主窗口中(设计器中)
主要修改它的几个属性:
(Name)属性 --(编程规范性修改)
Icon ---图标,就是在右下角时的的图标
Text ---鼠标移动到上面时 显示的文字
Visible --- 是否可见 设置为“True”
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();
}
最终运行效果如下:
- 本文标题: (C#)WinForm程序缩小到右下角通知区域
- 文章分类:【WinForm/WPF】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.