如何让WindowsForm缩小到系统匣过程详解
2019-09-16 14:35
831 查看
如何让windowsForm能像MSN一样缩小后会跑到右下方的系统匣内,
只要利用NotifyIcon就可以做到相同的功能,MSDN NotifyIcon组件说明
首先先开启一个windowsForm项目,在工具栏将NotifyIcon拉到windowsForm上。
接着先为NotifyIcon指定Icon和Text,就是在系统匣会出现的小图和鼠标移过去时出现的文字。
执行结果
如果要在窗口缩小时,只显示在系统匣显示,
反之则变成只显示在工作列,就必须要在Form的SizeChanged事件做控制:
将NotifyIcon 的Visible默认为false
private void Form1_SizeChanged(object sender, EventArgs e) { bool isMin = this.WindowState == FormWindowState.Minimized;//窗口是否为最小化 this.notifyIcon1.Visible = isMin;//是否显示在系统匣 this.ShowInTaskbar = !isMin;//是否显示在工作列 if (isMin) this.Hide();//隐藏主窗口 }
这样如果把窗口缩小后,会没办法再叫回来,但可以利用NotifyIcon的MouseDoubleClick事件,
让鼠标左键点选系统匣图示两下就恢复正常窗口。
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { this.Show(); this.WindowState = FormWindowState.Normal; } }
接着还可以为NotifyIcon加ContextMenuStrip,从工具栏中拉一个ContextMenuStrip到设计窗口,并设计一些选项进去,
执行结果~
NotifyIcon还可以加上气球提示效果,假设在窗口缩小的时候可跳出一个气球提示告知使用者~
Icon
在之前隐藏主窗口的地方再加一行CODE~
if (isMin) { this.Hide();//隐藏主窗口 this.notifyIcon1.ShowBalloonTip(2000);//气球提示2秒钟 }
执行结果~
嗯…杯具完了~~
以上就是本文的全部内容,希望对大家的学习有所帮助
您可能感兴趣的文章:
相关文章推荐
- 如何安装win10和ubuntu14双系统 图文详解win10和ubuntu14双系统安装过程
- Ubuntu下如何创建XFS文件系统的LVM详解
- IBM AIX 5.3 系统管理 -- 系统启动过程详解
- PDA物流配送系统项目开发过程中如何在PDA端设置服务器连接参数分享
- Win 2000系统引导过程详解
- Win 2000系统引导过程详解
- 如何在Oracle中使用Java存储过程 (详解)
- JAVA简单项目"购物系统"的整个开发过程详解(内含源码和注释)
- Android系统工程模式启动过程详解
- Linux系统启动过程详解
- Ubuntu系统里如何正确卸载oracle-j2sdk1.6(图文详解)
- LNMP系统服务搭建过程详解
- LAMP 系统服务搭建过程详解
- 详解RedHat系统下SVN服务器搭建过程
- Linux系统下配置squid代理服务器的过程详解
- 利用Laravel事件系统如何实现登录日志的记录详解
- windows7如何关闭系统保护(全过程图解)
- 如何做一个增加系统DSN的过程
- Android如何获取系统通知的开启状态详解
- Linux如何在系统运行过程中修改内核参数(转)