Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > Как узнать, что Balloon-окно из трея закрылось?


Автор: dzh2000 1.8.2007, 19:58
Вывожу balloon-окно, используя Shell_NotifyIcon.
Как узнать, что оно закрылось по таймауту или пользователем?

Автор: _RIM_ 2.8.2007, 00:16
1). Если Ballon закрыт по таймауту, то отлавливай событие окончания работы таймера (OnBallonTimeOut)
2). Если Ballon закрыт пользователем, то отлавливай тоже событие таймера (OnBallonTimeOut) Ballon'a у себя в приложении.
все просто. И кстати ты какой компонент используешь для вывода Ballon'a?
Если надо кину пример - как у меня в компоненте.

Автор: dzh2000 2.8.2007, 15:54
Цитата(_RIM_ @  2.8.2007,  00:16 Найти цитируемый пост)
все просто. И кстати ты какой компонент используешь для вывода Ballon'a?

Все делаю руками.

Цитата(_RIM_ @  2.8.2007,  00:16 Найти цитируемый пост)
Если надо кину пример - как у меня в компоненте.

Если в примере используется OnBallonTimeOut, было бы интересно взглянуть.

Автор: Rouse_ 3.8.2007, 08:28
После вызова Shell_NotifyIcon(NIM_MODIFY с флагом NIF_INFO в калбэк пойдут следующие сообщения:

Код

  NIN_BALLOONSHOW      = WM_USER + 2;
  NIN_BALLOONHIDE      = WM_USER + 3;
  NIN_BALLOONTIMEOUT   = WM_USER + 4;
  NIN_BALLOONUSERCLICK = WM_USER + 5;


Что они означают - думаю можно понять по их названию smile

Автор: EvilsInterrupt 3.8.2007, 09:18
Rouse_, вот ну почему мне нельзя поднимать репутацию. Когдаб я еще узнал эти константы ?!

Автор: Rouse_ 3.8.2007, 09:53
Цитата(EvilsInterrupt @  3.8.2007,  10:18 Найти цитируемый пост)
вот ну почему мне нельзя поднимать репутацию

Это ты про пузомерку, которая слева? Я на нее не обращаю внимания smile

Цитата(EvilsInterrupt @  3.8.2007,  10:18 Найти цитируемый пост)
Когдаб я еще узнал эти константы ?! 

Ну если бы посмотрел MSDN - то сразу бы узнал smile



Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)