博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WinForm 实现最小化任务栏托盘
阅读量:6698 次
发布时间:2019-06-25

本文共 1285 字,大约阅读时间需要 4 分钟。

步骤:

1. 在Form上添加一个 NotifyIcon 控件,无需设置属性,当时如果想要在最小化到任务栏可以点右键菜单,那还需要添加一个ContextMenuStrip菜单控件,然后把 NotifyIcon的ContextMenuStrip属性设置为菜单控件即可。

2.在 NotifyIcon  的DoubleClick 事件里,添加以下代码:

private void mainNotifyIcon_MouseDoubleClick(object sender, MouseEventArgs e)        {            //双击显示主界面            if (this.Visible)            {                this.WindowState = FormWindowState.Minimized;                this.mainNotifyIcon.Visible = true;                this.Hide();            }            else            {                this.Visible = true;                this.WindowState = FormWindowState.Normal;                this.Activate();            }        }

3.在窗体 Form 的Closing 事件添加以下代码:

private void frMain_FormClosing(object sender, FormClosingEventArgs e)        {            // 注意判断关闭事件reason来源于窗体按钮,否则用菜单退出时无法退出!            if (e.CloseReason == CloseReason.UserClosing)            {                //取消"关闭窗口"事件                e.Cancel = true; // 取消关闭窗体                 //使关闭时窗口向右下角缩小的效果                this.WindowState = FormWindowState.Minimized;                this.mainNotifyIcon.Visible = true;                //this.m_cartoonForm.CartoonClose();                this.Hide();                return;            }         }

这样就搞定了。

转载于:https://www.cnblogs.com/lpq21314/p/9475207.html

你可能感兴趣的文章
Vue笔记(六)——Vue组件通信&Vuex
查看>>
前嗅ForeSpider教程:数据建表
查看>>
promise
查看>>
275. H-Index II
查看>>
LeetCode 321. Create Maximum Number
查看>>
如何保证MongoDB的安全性?
查看>>
学习过程中的一些想法
查看>>
PHP 处理金额
查看>>
阿里云 Aliplayer高级功能介绍(九):自动播放体验
查看>>
dubbo源码解析(十)远程通信——Exchange层
查看>>
跨越解决方案之nginx
查看>>
ES6学习笔记
查看>>
SpringMVC工作原理
查看>>
【前端面试】字节跳动2019校招面经 - 前端开发岗(二)
查看>>
前端进阶系列(六):盒模型
查看>>
Android开发 - 掌握ConstraintLayout(一)传统布局的问题
查看>>
使用el-checkbox实现全选,点击失效没有反应
查看>>
webpack4.x 模块化浅析-CommonJS
查看>>
深解微服务架构:从过去,到未来
查看>>
聊聊毕业设计系列 --- 系统实现
查看>>