2013-08-10 2 views
0

Я работаю над приложением WPF/.NET 4, которое живет в системном трее и периодически показывает сообщения пользователю.Продвижение NotifyIcon из области переполнения без отображения подсказки шара

Я хочу, чтобы мой NotifyIcon продвигался из области переполнения панели задач в видимую часть каждый раз, когда есть сообщение. Это отлично работает, если я называю ShowBalloonTip на моем NotifyIcon; однако я не хочу использовать стандартные воздушные шары OS (у меня есть специальный элемент управления для этого, который поддерживает несколько экземпляров и пользовательскую анимацию).

Возможно ли это? Кажется, что это не позволяет показывать пустой/невидимый воздушный шар, а удаление/повторное добавление значка не имеет предполагаемого эффекта. Интересно, должен ли я искать создание вторичного значка в трее каждый раз, когда у меня есть сообщение (например, значок «Новая почта» Outlook) и удаление его, когда мое сообщение исчезает.

ответ

1

Это невозможно. Существенной проблемой в области уведомлений является то, что каждый программист считает, что его приложение достаточно важно, чтобы быть рядом с часами. Скромность не является чертой программиста, и это хорошо.

Пользователь, однако, устанавливает разные приоритеты. Он может запустить еще, чем три приложения, которые, как полагают, должны иметь возвышенное местоположение. Это получило действительно из рук, я видел скриншоты машин Win98, где 75% панели задач были покрыты важными программами.

Это не было устойчивым, и Microsoft что-то с этим поделала. Они добавили область переполнения, чтобы обеспечить дом значками уведомлений, которые пользователь не считает важными. Будучи самим пользователем компьютера, он очень быстро заселен тем, что значки shovelware поставляются с новой машиной, которую я покупаю. Оттуда скорость, которую я деинсталлирую, обратно пропорциональна количеству раз, когда она надувает меня совершенно бесполезной или непостижимой информацией. Единственные, кто когда-либо выжил, - это те, которые никогда не показывают воздушный шар.

Основная особенность области переполнения заключается в том, что программы не могут сделать что-нибудь, чтобы поднять себя рядом с часами. Это полностью лишило бы ее возможности. Помимо показа воздушного шара, пользователь должен знать, откуда он. Это лучше будет чем-то значимым и актуальным для пользователя. Если это не так, то ваш деинсталлятор является частью вашего продукта, который больше всего тестируется.

Вы сами являетесь компьютером и также сражаетесь с раздражающими значками уведомлений. Примените ту же логику к своей собственной. И не забудьте спросить кого-то еще, что они думают о вас. И если ваши уведомления достаточно полезны, это просто позаботится о себе. Ваш пользователь будет переместить его обратно. Потому что это то, что он может сделать.

+0

Спасибо. Это то, что я себе представлял, и я согласен с вашим заявлением. – siger

Смежные вопросы