热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

NotifyIcon控件

NotifyIcon就是系统托盘控件.通知区域中的图标是一些进程的快捷方式,这些进程在计算机后台运行,如防病毒程序或音量控制.这些进程不会具有自己的用户界面.NotifyIcon类

NotifyIcon就是系统托盘控件.通知区域中的图标是一些进程的快捷方式,这些进程在计算机后台运行,如防病毒程序或音量控制.这些进程不会具有自己的用户界面.NotifyIcon 类提供了编写此功能的方法.Icon属性定义显示在通知区域中的图标。图标的弹出菜单由ContextMenu属性确定.Text属性分配工具提示文本.要在通知区域中显示图标,必须将Visible属性设置为 true.

如下图所示:

 

向Form1窗口中添加一个NotifyIcon控件,修改其Name属性为 TheNotifyIcon。修改其Text属性为订单提醒,与应用程序的标题相同。这是因为NotifyIcon显示在系统托盘中时,Text属性中保存的文本为鼠标移动到程序图标上时的提示信息。修改Icon属性,为NotifyIcon添加一个图标;如下图所示:

在Form1的属性窗口上,把Icon 属性也选择为与NotifyIcon相同的图标。修改ShowInTaskBar属性值为False,这样,应用程序在运行时就不会出现在任务栏中;

 

添加双击TheNotifyIcon时的事件处理代码(DoubleClick)

1 private void TheNotifyIcon_DoubleClick(object sender, EventArgs e)
2 {
3 if (this.Visible)
4 {
5 this.Hide();
6 }
7 else
8 {
9 this.Show();
10 }
11 }

在使用NotifyIcon控件时,经常需要用到快捷菜单(ContextMenu控件)。使用方法为,向Form1中添加contextmenu控件,添加两个功能,一个为打开主界面,一个为退出。在TheNotifyIcon的ContextMenu属性中选择刚刚添加的ContextMenu控件。这样在图标上可以通过快捷菜单执行程序的各种功能.

在功能的单击事件中代码如下:

1 //显示主界面
2 private void toolStripMenuItem1_Click(object sender, EventArgs e)
3 {
4 if (this.Visible)
5 {
6 this.Hide();
7 }
8 else
9 {
10 this.Show();
11 }
12 }
13
14 //关闭
15 private void toolStripMenuItem2_Click(object sender, EventArgs e)
16 {
17 this.Close();
18 }

最小化窗体时,在系统托盘区域显示程序图标,并有气球提示,时间为30秒. 效果如图,具体实现如下:

Form1_SizeChanged事件,效果为最小化窗体时,在系统托盘区域显示程序图标及气球提示:

这样就实现了上述功能,需要强调的是:代码this.TheNotifyIcon.ShowBalloonTip(30, "消息提醒", "现在是托盘状态!", ToolTipIcon.Info);为气球提示的实现,代码WindowState == FormWindowState.Minimized为窗体最小化的判断条件,代码this.WindowState = FormWindowState.Normal;为窗体还原的实现.

 

转:https://www.cnblogs.com/liubeimeng/p/3881060.html



推荐阅读
author-avatar
元元木樨_669
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有