像QQ一样操作Winform程序
-Begin-
前言
QQ和微信作为日常使用最广的CS客户端程序,可能我们以后习惯了这种操作:
-
点击最小化,将程序最小化到任务栏中
-
点击关闭,并不是真的关闭,而是缩小到托盘里
-
从托盘中找到图标,双击,将程序展示出来
-
从托盘中找到图标,右击,退出,才是真正的退出程序
今天跟大家分享一下,Winform程序实现最小化到托盘及托盘右键菜单。
实现
1、首先假设已经开发好了应用程序,从工具箱中,找到一个组件叫NotifyIcon,拖放到主窗体中。
2、点击NotifyIcon组件,右侧属性中,修改Icon和Text,改成你需要设置的内容。
3、主窗体添加一个FormClosing事件,在该事件中编写代码如下:
realClose是一个全局字段,表示是否真的关闭,默认值是False,这样直接点击关闭时,并不是真的关闭程序,而且缩小到托盘。
4、给NotifyIcon组件添加一个双击事件,在双击事件中,将程序显示出来,代码如下:
5、目前这种情况是无法关闭程序的,所以需要给NotifyIcon组件添加一个右键菜单,从工具箱中,添加一个ContextMenuStrip组件,然后添加两个Item,分别是打开软件tsm_Open和关闭软件tsm_Exit。
6、打开软件代码比较简单,具体如下:
7、退出软件首先是将realClose置位True,然后调用this.Close方法即可。
至此,就实现了Winform程序实现最小化到托盘及托盘右键菜单。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构