微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在通知区域创build丰富的工具提示和丰富的气球

我一直在想,每当你调用NotifyIcon类的ShowBalloonTip方法时,你会得到如下的气球工具提示

图1:标准气球工具提示

某些应用程序和Microsoft产品能够显示比“简单”气球提示更多的内容

这里有一些样品:

图2:Windows更新气球工具提示

如何在单击鼠标左键时禁用按住/按住Alt键,Ctrl键和Shift键

如何在c#.net windows应用程序中检查gridview的行是否被选中

.Net混淆器

WPF RibbonWindow + Ribbon =标题外屏?

检索Windows“窗口颜色”

驱动程序安装提示http://i.msdn.microsoft.com/dynimg/IC295019.png

图3:硬件驱动程序安装气球工具提示

图4:硬件删除工具提示(程序:USB安全删除

仔细看图2,图3和图4,发现它们不是标准的气球工具提示

图2具有不同的形状,可能来自设置Region属性。 它也有一个比标准ToolTipIcon大得多的自定义图标。

图3使用标准的形状(我认为),但它有一个自定义的图标,不用说是大于认的ToolTipIcon大小。

图4使用了一个标准的ToolTipIcon,但它具有不同的形状。

我的问题是如何创build在.NET中的通知区域中看到的任何“富”气球工具提示? 我可以处理WinAPI以及它可以产生必要的输出

无法findtypes或名称空间名称“ServiceController”

更新.Net Windows服务

http.sys&响应时间logging

什么编程实践影响窗口句柄的数量

Windows版本的“Netem”(模拟慢速networking连接)?

您必须使用Win32函数Shell_NotifyIcon 。 您可以将NOTIFYICONDATA结构的dwInfoFlags成员设置为NIIF_USER,以便为气球工具提示使用自定义图标。

在Windows XP Service Pack 2及更高版本中,您可以使用hIcon成员指定自定义图标。

在Windows Vista和更高版本中,NOTIFYICONDATA结构包含addiional成员hBalloonIcon 。 如果已将cbSize成员设置为扩展的NOTIFYICONDATA结构的正确大小,则可以使用此成员来指定自定义图标。

看一下这个:

http://www.codeproject.com/KB/WPF/WPF_TaskbarNotifier.aspx

要么

http://www.codeproject.com/KB/WPF/wpf_notifyicon.aspx

其他选项是让你自己的通知表单气球,然后你会有鲜花背景和粉红色的边界的通知:)顺便说一句:它也可以有一些功能

正如在这个例子中:

http://img.zgserver.com/windows/QtA0Y.jpg <<图片示例

创建一个表单,只要你喜欢,地区,控制,等:)和代码如下所示:

void notifyIcon_MouseMove(object sender,MouseEventArgs e) { if (!this.Visible) { ShowPopup(); } } Timer t = new Timer(); private void ShowPopup() { Rectangle rect = Screen.GetWorkingArea(new Point(Screen.PrimaryScreen.Bounds.Right,Screen.PrimaryScreen.Bounds.Bottom)); this.Top = rect.Bottom - this.Height; this.Left = rect.Right - this.Width; this.Visible = true; t.Interval = 4000; t.Tick += new EventHandler(t_Tick); t.Start(); } void t_Tick(object sender,EventArgs e) { t.Stop(); Visible = false; } private void Form1_Click(object sender,EventArgs e) { this.Visible = false; } private void Form1_FormClosing(object sender,FormClosingEventArgs e) { notifyIcon.Visible = false; notifyIcon.dispose(); }

顺便说一句,他们都看起来有点相同,具有不同的图标大小,第一个可以适合右侧,而其他所有其他都是左对齐…小阴影的变化等:)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐