Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как убрать иконку из системного трея


DSP ©   (2003-06-20 21:36:00) 

kol-прога в трее закончила(или ее закончили) работу,а иконка осталась
(убирается если ткнуть в нее мышей).Как убрать иконку программно.
Интенсивная работа коротких прог -и иконок в трее немеряно-нехорошо.
kol170 delphi5,7 win98


dsp   (2003-07-12 13:37:00) [1]

получилось так
procedure TForm1.Button1Click(Sender: PObj);
var
  hWnd : THandle;
  R : TRect;
  I : Integer;
begin
  hWnd := FindWindow( 'Shell_TrayWnd', NIL );
  hWnd := FindWindowEx( hWnd, 0, 'TrayNotifyWnd', NIL );
  GetWindowRect( hWnd, R );
  for I := 1 to R.Right - R.Left do
      SendMessage( hWnd, WM_MOUSEMOVE, 0, I + (R.Bottom - R.Top) div 2 shl 16 );
end;


Vladimir Kladov   (2003-06-23 21:04:00) [2]

Чужой программы? Если сделаете, скажите, как. Мне вот интересена несколько обратная задача: некоторые довольно умные программы не умеет восстанавливать свою иконку в трее при падении проводника.


DSP   (2003-06-23 08:50:00) [3]

TrayIcon.Activate := False; -это не подходит.
Надо из другого процесса(программы).На этот момент мне известно только какая программа оставила иконку в трее.Согласен что некорректно,но таковы условия.Все с моими сырцами,но не хотелось бы переделывать,надо побыстрее,тем более что прога, оставляющая иконку иногда завершает работу с ран тайм еррор и этот дефект
подчищает другая прога.
Заранее благодарен.


Vladimir Kladov   (2003-06-21 14:34:00) [4]

Active. Но если остается, значит, на выходе происходит что-то вроде access violation.


BaRToV   (2003-06-20 22:20:00) [5]

TrayIcon.Activate := False;


Наверх

Титульная страница Поиск, карта сайта Написать письмо