如何把程序最小化到系统托盘里去。
其实这样的例子在很多软件上面都可以见到的,但刚开始找属性时并没有任何和系统托盘有关的,
找了一下事件,也没有发现有关最小化按钮点击的事件。郁闷中,于是上网搜索了一下,
才发现原来有个叫notifyicon的控件(汗一个,再bs自己一个,以前怎么没发现)。
而最小化的事件也可以换种思路去实现(用sizechanged事件)。
下面是实现当点击最小化按钮时,程序缩到系统托盘中,双击系统托盘图标时,还原程序。
1、建个winform项目,其它操作略过。
2、拉个notifyicon控件,将属性visable设置成false,在text属性上随便填些文件。
3、实现form的sizechanged事件,代码如下:
4、实现notifyicon控件的doubleclick事件,代码如下:
if(this.windowstate == formwindowstate.minimized) //判断是否最小化
{
this.showintaskbar = false; //不显示在系统任务栏
notifyicon.visible = true; //托盘图标可见
}
{
this.showintaskbar = false; //不显示在系统任务栏
notifyicon.visible = true; //托盘图标可见
}
4、实现notifyicon控件的doubleclick事件,代码如下:
if(this.windowstate ==
formwindowstate.minimized)
{
this.showintaskbar = true; //显示在系统任务栏
this.windowstate = formwindowstate.normal; //还原窗体
notifyicon.visible = false; //托盘图标隐藏
}
{
this.showintaskbar = true; //显示在系统任务栏
this.windowstate = formwindowstate.normal; //还原窗体
notifyicon.visible = false; //托盘图标隐藏
}