C#---实现无边框窗体的最小化操作

 

首先,添加界面响应最小化的按钮事件:(ps:直接上网搜的图片,添加的事件)

1  private void pictureBox2_Click(object sender, EventArgs e)
2         {
3             this.WindowState = FormWindowState.Minimized;//最小化 
4 
5         }

 

 

重要部分:添加notifyIcon控件

 1 private void notifyIcon_Click(object sender, EventArgs e)
 2    { 
 3 
 4          
 5          if (this.WindowState != FormWindowState.Minimized)
 6            {
 7                this.WindowState = FormWindowState.Minimized;
 8  } 9 else 10  { 11 this.WindowState = FormWindowState.Maximized; 12  } 13 14 }

 


 

 

 

在From_Load中添加事件内容:

 1  private void Login_Load(object sender, EventArgs e)
 2         {
 3             //初始化图片属性  
 4             notifyIcon.Icon = new Icon("test.ico");
 5             //初始化是不可见的  
 6             notifyIcon.Visible = false;
 7             //为notifyIcon添加Click事件  
 8             notifyIcon.Click += new System.EventHandler(this.notifyIcon_Click);
 9             //为当前窗体添加窗体形状改变响应函数  
10             this.SizeChanged += new System.EventHandler(this.Login_SizeChanged);
11         }

使用:Resize事件进行状态的判断:

 1 private void Login_Resize(object sender, EventArgs e)
 2         {
 3             //如果当前状态的状态为最小化,则显示状态栏的程序托盘  
 4             if (this.WindowState == FormWindowState.Minimized)
 5             {
 6                 
 7                 //不在Window任务栏中显示  
 8                 this.ShowInTaskbar = true;
 9                 //使图标在状态栏中显示  
10                 this.notifyIcon.Visible = true;
11             }
12         }

其他:任务栏图标的重复单击实现最小化和还原切换

 

转载于:https://www.cnblogs.com/jackzoom/p/7201445.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值