NotifyICon使用

2010-04-11 15:47 by Ju2ender, 1438 visits, 网摘, 收藏, 编辑

最常见使用NotifyIcon的程序就是QQ了,当初我非常好奇这通知区域的小企鹅是怎样随着QQ的执行放上去的,这的确是个有趣的技巧。

NotifyICon使用 

要是用到自己的程序上的确显得非常专业!我们来为自己的小程序也加入个 : )

NotifyICon使用  NotifyICon使用

上面是Demo的效果,还能够吧 : )

 

 

 

 

 

首先我们创建一个WinForm项目,我起名叫“NotifyIconTest”:

NotifyICon使用

删除默认创建的Form1,加入新窗口Main;新建一个目录,里面放入你喜欢的Icon(图片须为ico图像),这里我放入的是Gateway的Icon。

以下,在窗口中放入一个TextBox,一个Button,我起名叫btnShow。TextBox用于输入将放入提示气泡中的信息,Button用于将输入的信息显示出来。接着放入我们的主角:NotifyIcon控件,一般它位于公共控件中:

NotifyICon使用

双击,将它增加我们的项目,这时它会放入设计视图的左下角。我们来看看它有哪些属性(不经常使用的就不说明了):

NotifyICon使用

BalloonTipIcon —— 气泡提示的类型,有None(无)、Info(蓝色感叹号)、Warnning(黄色感叹号)、Error(小红叉);

NotifyICon使用 NotifyICon使用 NotifyICon使用 NotifyICon使用

 

 

 

BalloonTipText —— 气泡提示的内容,如上图的None等气泡类型信息;

BalloonTipTitle —— 气泡提示的标题,如上图的Tip;

ContextMenuStrip —— 绑定的右键菜单;

Icon —— 所显示的图标;

Text —— 鼠标移上去时,显示的提示信息;

NotifyICon使用

Visible —— 是否显示图标,当然,不显示就看不到了。

 

那么如今我们在Show Button的Click事件中加入例如以下代码:

private void btnShow_Click(object sender, EventArgs e)
{
    string tipText = this.txtText.Text.Trim() == "" ? "No text!" : this.txtText.Text.Trim();
    this.notifyIcon.ShowBalloonTip(1000, "Tip", tipText, ToolTipIcon.Info);
}

首先推断了TextBox中是否有信息,无则提示“No Text!”,有则显示信息。使用NofifyIcon的ShowBalloonTip()(显示气泡提示)方法将输入的信息显示出来,第一个參数是信息显示的时间,以毫秒为单位;第二个是BalloonTipTitle;第三个是BalloonTipText;第四个是BalloonTipIcon。

 

为了显示提示更方便,不如在输入信息后按下回车就显示信息。做法是在窗口的属性中找到AcceptButton:

NotifyICon使用

它的作用就是窗口的接受button,也就是与回车相应的button。将它设置为Show Button。另外还有个CancelButton属性;

NotifyICon使用

它表示关闭该窗口的button,与Esc键相相应。

 

为了更像那么回事儿,我们再为图标加个右键菜单:

NotifyICon使用

为它输入几个项目,我为它加了6个项目,当中一个是ComboBox、一个是TextBox:

NotifyICon使用

然后,将它绑定到NofifyIcon的ContextMenuStrip属性上。

 

完毕了,我们来看看效果:

NotifyICon使用

NotifyICon使用

NotifyICon使用

点击这里下载上面的演示样例NotifyIconTest。

 

以下是应一楼的朋友写的仿QQ提示框的Demo:

NotifyICon使用

仅仅是粗略的实现了下,有待进一步优化,点击这里下载改变后的演示样例。

你可能感兴趣的:(notify)