C#中实现Form的Minimize、Maximize、Close按钮及任务栏图标
来源:互联网 发布:绘制图纸软件 编辑:程序博客网 时间:2024/06/11 13:27
这是第一次写博客,心里还有点紧张,不知道该写什么,仔细回想了一下最近自己看的东西,发现自己前一段时间看的C#实现Form的Minimize、Maximize、Close按钮的内容记得还比较清楚,所以就赶紧记录下来。
在C#.net中Form对象有一个WindowState属性,该属性有三个值,分别是FormWindowState.Minimized、FormWindowState.Maximized、FormWindowState.Normal,这三个值分别代表了Form当前属于最小化、最大化、正常状态,可以用如下代码设置窗体的状态:
this.WindowState=FormWindowState.Minimized;//将窗体最小化
this.WindowState=FormWindowState.Maximized;//将窗体最大化
this.WindowState=FormWindowState.Normal;//将窗体设为正常大小
当然在设置窗体状态之前要判断一下当前窗体的状态了,不然容易出错。可以按照如下方法判断Form状态:
//将窗体从当前最大化恢复到正常状态
if(this.WindowState==FormWindowState.Maximized&&this.Visible==true)
{
this.WindowState=FormWindowState.Normal;
}
Form最小化是指整个Form都缩小到任务栏上,但是是以Form的标题栏形式显示的,若是想让Form以Icon的形式显示在任务栏右下角,则需要给Form添加一个NotifyIcon控件,在使窗体最小化的代码中需要做如下修改:
if(this.WindowState==FormWindowState.Normal&&this.Visible==true)
{
this.notifyIcon1.Visible=true;//在通知区显示Form的Icon
this.WindowState=FormWindowState.Minimized;
this.Visible=false;
this.ShowInTaskbar=false;//使Form不在任务栏上显示
}
当然要是Form能够复原,就必须要给notifyIcon1添加一些事件,可以给this.notifyIcon1.MouseDoubleClick()添加如下代码
private void notifyIcon1_MouseDoubleClick(object sender,MouseEventArgs e)
{
if(this.WindowState==FormWindowState.Minimized&&this.Visible==false)
{
this.WindowState=FormWindowState.Normal;
this.Visible=true;
this.ShowInTaskbar=true;
this.notifyIcon1.Visible=false;
}
}
这样双击通知区的Form的Icon时,Form就可以恢复正常了。
这里要注意,需要给notifyIcon1的Icon属性设置一张图片,因为Icon默认的是无图片,这样你在通知区就发现不了Form的Icon了。
- C#中实现Form的Minimize、Maximize、Close按钮及任务栏图标
- arcgis javascript api中关闭infowindow或者Popup 右上角的 关闭(close)和最大化(Maximize) 按钮
- arcgis javascript api中关闭infowindow或者Popup 右上角的 关闭(close)和最大化(Maximize) 按钮
- C#无标题Form点击任务栏图标最小化
- 实现Thumbnail Toolbars,对最小化任务栏的图标点击按钮
- C# 实现任务栏图标程序
- C# 实现任务栏图标程序
- C# 实现任务栏图标程序
- 如何让C#新建的FORM不在任务栏中显示
- 浅谈c#实现隐藏任务栏图标的Windows托盘程序
- 浅谈c#实现隐藏任务栏图标的Windows托盘程序
- C#实现图标按钮
- c# 任务栏中图标闪烁效果
- c# 任务栏中图标闪烁效果
- C# 在任务栏中显示应用程序图标
- C# Form Dispose 和 Close的区别
- C#实现系统托盘,C#窗体最小化时隐藏为任务栏图标的Window appllication
- 隐藏窗口和任务栏图标的实现
- ubuntu下安装配置shadowsock
- Java压测之四两拨千斤
- java程序加载sigar库报异常的错误的解决
- 傻傻的情绪
- 在myeclipse中ssh框架搭建的麻烦问题
- C#中实现Form的Minimize、Maximize、Close按钮及任务栏图标
- vector第四步修炼之道
- 如何使用PowerBI将文件夹的内容中的所有文件合并为一张表进行统计
- 【在线等急急急!】相差为2的两个素数称为孪生素数。例如,3与5,41与43等都是孪生素数。设计程序求出指定区间上的所有孪生素数对。区间上限和下限由键盘获取。
- 手机号码验证--正则表达式
- Learning Spatial-Aware Regressions for Visual Tracking 阅读笔记
- [并查集]HAOI2006 旅行
- java编程思想--数组
- c extern用法