Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1164265
  • 博文数量: 146
  • 博客积分: 6619
  • 博客等级: 准将
  • 技术积分: 1621
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-29 14:06
文章分类

全部博文(146)

文章存档

2020年(1)

2019年(4)

2018年(3)

2017年(5)

2015年(5)

2014年(7)

2013年(5)

2012年(11)

2011年(15)

2010年(13)

2009年(14)

2008年(63)

分类: 嵌入式

2012-10-31 16:46:51

与C++相比c#提供的NotifyIcon控件实现托盘图标容易了许多。

托盘程序的制作:

1.拖拽NotifyIcon控件到窗体上,并设置NotifyIcon的Icon(很重要!否则运行后看不到效果)
2.控制窗体最小化到托盘。

点击(此处)折叠或打开

  1. private void MinToIcon()
  2. {
  3.   this.Hide();
  4.   this.ShowInTaskbar = false;
  5.   this.notifyIconCtrl.Visible = true;
  6.  }

  7. private void ShowDlg()
  8.  {
  9.    this.Show();
  10.    this.ShowInTaskbar = true;
  11.    this.notifyIconCtrl.Visible = false;
  12. }

3.创建菜单项:"显示主窗体","退出" ,将菜单挂到NotifyIcon上。

点击(此处)折叠或打开

  1. private MenuItem showDlgMenu = new MenuItem("显示窗体");
  2. private MenuItem exitMenu = new MenuItem("退出");

  3. this.showDlgMenu.Click += new EventHandler(showDlgMenu_Click);
  4. this.exitMenu.Click += new EventHandler(exitMenu_Click);

  5. this.notifyIconCtrl.ContextMenu = new System.Windows.Forms.ContextMenu();
  6. this.notifyIconCtrl.ContextMenu.MenuItems.Add(this.showDlgMenu);
  7. this.notifyIconCtrl.ContextMenu.MenuItems.Add(this.exitMenu);

  8. private void btnMinToIcon_Click(object sender, EventArgs e)
  9. {
  10.   MinToIcon();
  11. }

  12. void showDlgMenu_Click(object sender, EventArgs e)
  13. {
  14.   ShowDlg();
  15. }

  16. void exitMenu_Click(object sender, EventArgs e)
  17. {
  18.   this.Dispose(true);

  19.   Application.ExitThread();
  20. }



阅读(3980) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~