编写C#程序实现动态系统托盘图标.docVIP

  • 3
  • 0
  • 约2.92千字
  • 约 8页
  • 2017-12-22 发布于河南
  • 举报
编写C#程序实现动态系统托盘图标

编写C#程序实现动态系统托盘图标 Visual C#是微软公司推出的下一代程序开发语言,是微软.Net框架中的的一个重要组成部分。微软的.Net平台堪称为新一代的互联网平台。对于技术开发人员来说,.Net平台的两大特性是非常卓越的,首先是其所提供的公共语言运行时,也就是公用语言运行平台,另一方面就是其庞大而全面的统一编程类。Visual C#就是通过调用这些类、对象来实现许多比较强大的功能。   本文通过向大家介绍一个.Net平台上用C#写的可以停放在任务栏上的图标程序(类似于Flashget、OICQ那种系统托盘图标)来和大家一起体验一下用C#编程的乐趣。   一、概述:   我这里所指的图标程序是类似于在Windows中经常接触的停放在任务栏上,在后台运行的病毒监视、媒体播放等程序。它们一般都具有单击显示或隐藏主界面,击右键弹出菜单,当鼠标停在图标上时显示提示信息的功能。   程序主要用到了一下几个类:   System.Windows.Fomrs.NotifyIcon类   System.Windows.Forms.ContextMenu类   System.Windows.Forms.MenuItem类   System.Windows.Forms.Label类   System.Windows.Forms.Timer类   二、程序设计和运行的环境:   (1)微软公司视窗2000服务器版或视窗XP版   (2).Net FrameWrok SDK Beta 2版   三、具体实现步骤:   (1).在Visual Studio下新建一个C#的工程,不妨命名为AnimateSystemTray。图示如下:   (2).现在我们来设计程序的主界面:   先将窗体的Text属性设置为动画系统图标示例,MaximiseBox、MinimiseBox、ShowInTaskbar属性均设置为False。   再往窗体上添加Label控件、NotifyIcon控件、ContextMenu控件、Timer控件各一个。   将Label控件的Text属性设置为请右击系统托盘图标;将NotifyIcon控件的Icon属性设置为一个图标文件: ,Text属性设置为这是个示例程序!,ContextMenu属性设置为contextMenu1;接下来开始编辑ContextMenu控件,图示如下:   最后还要在导入两个图标 (Icon1.ico), (Icon2.ico)文件到该项目。   (3).现在我们开始编写代码部分:   首先在我们的类中添加以下数据成员:   private Icon m_Icon1;   private Icon m_Icon2;   private bool m_bFlag;   private bool m_bShowWnd;   修改Form1()函数为:   public Form1()   {   //   // Required for Windows Form Designer support   //   InitializeComponent();   //   // TODO: Add any constructor code after InitializeComponent call   //   m_bFlag=true;   m_bShowWnd=true;   try   {   m_Icon1 = new Icon(Icon1.ico);//导入图标文件   m_Icon2 = new Icon(Icon2.ico);   }   catch ( Exception e )   {   MessageBox.Show(Error + e.Message,Animate Tray - Error);   menuItem2.Enabled = false;   menuItem3.Enabled = false;   }   }   添加menuItem1、menuItem2、menuItem3、m_trayIcon的Click事件,消息处理函数如下:   private void menuItem1_Click(object sender, System.EventArgs e)   {   timer1.Start();//打开计时器   }   private void menuItem2_Click(object sender, System.EventArgs e)   {   timer1.Stop();//停止计时器   }   private void menuItem3_Click(object sender, System.EventArgs e)   {   A

文档评论(0)

1亿VIP精品文档

相关文档