程 序 人 生

[每个人都是工程师,书写着属于自己的人生代码!--林海]
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

最小化到托盘

Posted on 2009-06-13 09:25  林海  阅读(271)  评论(0编辑  收藏  举报

1.在form中添加一个NotifyIcon控件,并给它设一个图标,如lin.ico
2.给当前FORM添加SizeChanged事件,最小化时显示在托盘
3.给NotifyIcon控件添加Click事件,点击后恢复原窗体
 
using System;  
using System.Collections.Generic;  
using System.ComponentModel;  
using System.Data;  
using System.Drawing;  
using System.Text;  
using System.Windows.Forms;  
 
namespace LinhaiTest 
{  
    public partial class Form1 : Form  
    {  
        public Form1()  
        {  
            InitializeComponent();  
        }  
 
        private void Form1_Load(object sender, EventArgs e)  
        {  
            this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);   
            notifyIcon1.Visible = false;  
            notifyIcon1.Click += new System.EventHandler(this.notifyIcon1_Click);  
            this.SizeChanged += new System.EventHandler(this.Form1_SizeChanged);      
        }  
 
        private void Form1_SizeChanged(object sender, EventArgs e)  
        {  
            if (this.WindowState == FormWindowState.Minimized)    
            {  
                this.ShowInTaskbar = false;  
                this.notifyIcon1.Visible = true;  
            }   
        }   
  
        private void notifyIcon1_Click(object sender, EventArgs e)  
        {  
            if (this.WindowState == FormWindowState.Minimized)  
                this.WindowState = FormWindowState.Normal;  
            this.Activate();  
            this.notifyIcon1.Visible = false;  
            this.ShowInTaskbar = true;      
        }   


    }