如何让WindowsForm缩小到系统匣过程详解
如何让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秒钟 }
执行结果~
嗯…杯具完了~~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
鸿蒙开发之Button按钮类型及如何通过代码设置(HarmonyOS鸿蒙开发基础知识)
这篇文章主要介绍了鸿蒙开发之Button按钮类型及如何通过代码设置(HarmonyOS鸿蒙开发基础知识),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-09-09ip地址掩码和位数对应关系由浅入深理解(192.168.0.0/24)
192.168.0.0/24这是IP地址的一个规范写法,前面是IP地址,后面跟一个斜杠以及一个数字,这条斜杠及后面的数字称为网络掩码(network mask)。斜杠后面的数字表示有意义的比特位的个数(从左到右)。ip地址后面的斜杠24表示掩码位是24位的,即用32位二进制表示的子网...2023-06-06浅析鸿蒙开发app支持JavaScript?上手HelloWorld,体验究竟香不香
这篇文章主要介绍了浅析鸿蒙开发app支持JavaScript?上手HelloWorld,体验究竟香不香,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-09-09
最新评论