【问题标题】:Location of app on the Windows 7 Taskbar应用程序在 Windows 7 任务栏上的位置
【发布时间】:2011-08-21 08:29:54
【问题描述】:

有没有办法知道我的应用程序在 Windows 7 任务栏上的位置(以像素为单位)?我之所以这么问,是因为我想在任务栏中我的应用图标上方显示通知。

谢谢!

【问题讨论】:

    标签: c# .net windows winapi windows-7


    【解决方案1】:

    虽然有许多 P/Invokes 可用于在通知区域中定位图标,但我认为没有任何方法可以确定图标在任务栏中的位置。

    不管怎样,通知区域在Windows 7中仍然存在,那为什么不使用通知图标呢?事实上,Windows UX Guidelines 指定了这个:

    • 您的程序是否需要显示通知?如果需要,您必须使用通知区域图标。

    或者如果您不需要通知气球来显示通知的文本信息,您可以尝试改用overlay icon

    如果关键是要引起用户的注意,则闪烁任务栏图标。

    【讨论】:

    • 我会对此发表评论,但评论区并没有给我太多的格式化空间......
    • 不,这是一个答案。使用 Windows 已经提供的工具。不要推出自己定制的劣质解决方案。查找任务栏按钮的像素位置很麻烦,而且该通知很容易被破坏。
    • 我认为我的答案现在看起来很完整。
    • 我认为覆盖图标是要走的路。 “你有新邮件”“记住你设置为忙”等等。这正是@Martin 想要传达的内容。
    【解决方案2】:

    您所要求的算法在此博客中有详细描述:How to find the position of a taskbar button on Windows 7 or Vista

    【讨论】:

      【解决方案3】:

      吸引用户注意您的任务栏图标的方法是使用 FlashWindowEx API 使其闪烁。 http://pietschsoft.com/post/2009/01/26/CSharp-Flash-Window-in-Taskbar-via-Win32-FlashWindowEx.aspx

      【讨论】:

        猜你喜欢
        • 2013-05-11
        • 1970-01-01
        • 2013-01-26
        • 2012-07-05
        • 2012-02-12
        • 2010-12-22
        • 2014-12-12
        • 2011-02-12
        • 2010-11-30
        相关资源
        最近更新 更多