码迷,mamicode.com
首页 > Windows程序 > 详细

C# 编写的winform程序的托盘功能

时间:2017-07-26 13:34:34      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:实例化   window   执行   inf   on()   简单   ble   his   res   

基本上大部分的桌面程序都有托盘功能,比如说QQ:当你单机QQ程序窗体的最小化按钮时,窗体会消失,并且单击电脑右下角的QQ图标时,QQ的窗体重新显现……

在这里介绍下我们自己编写的winform程序怎么实现托盘功能。

在System.Windows.Forms命名空间下的 封闭类 NotifyIcon可以帮我们轻松实现托盘功能。(程序集 System.Windows.Forms.dll)

在窗体的加载事件的处理方法中我们添加一下代码:

            NotifyIcon MyNotifyIcon = new NotifyIcon();//实例化

            MyNotifyIcon.Visible = true;//可见性
            MyNotifyIcon.Text = "我的托盘程序";//鼠标放在托盘时显示的文字
            MyNotifyIcon.ShowBalloonTip(1000);//托盘气泡的显现时间
            MyNotifyIcon.BalloonTipText = "我的托盘程序";//气泡显示的文字
            MyNotifyIcon.Icon = System.Drawing.Icon.ExtractAssociatedIcon(System.Windows.Forms.Application.ExecutablePath);//托盘的外观(系统)

            //自定义托盘外观
            //Icon i = new Icon("FileName");
            //MyNotifyIcon.Icon = i;
            MyNotifyIcon.MouseDoubleClick += MyNotifyIcon_MouseDoubleClick;//托盘的鼠标窗机时间注册方法    

然后我们编写托盘双击的时候执行的方法

 void MyNotifyIcon_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            this.Show(); // 窗体显现
            this.WindowState = FormWindowState.Normal; //窗体回复正常大小
        }

然后在给窗体的大小改变事件注册一个方法

this.Resize += Form1_Resize;
Form1_Resize()方法内容:
//单机窗体最小化时窗体隐藏 
void Form1_Resize(object sender, EventArgs e)
        {
            if (this.WindowState == FormWindowState.Minimized)
            {
                this.Hide();
            }
        }

以上内容简单方便的实现了Winform的托盘功能。

 

C# 编写的winform程序的托盘功能

标签:实例化   window   执行   inf   on()   简单   ble   his   res   

原文地址:http://www.cnblogs.com/JK1989/p/7238916.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!