Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.26;
Скачать: CL | DM;

Вниз

Как программно перерисовать всё содержимое SysTray   Найти похожие ветки 

 
Nimbus ©   (2002-07-11 00:08) [0]

Подскажите, plz, кто сталкивался с данной проблемой -
убиваю чужую прогу, а иконка от неё остаётся в Tray, пока над ней не появится указатель мыши (как сделать Refresh или что-то типа этого всей области SysTray сразу после "убийства проги").
Заранее благодарю.


 
paul_shmakov ©   (2002-07-12 13:19) [1]

так можно симулировать движение мышки :) вот только что попробовал под w2k.

program refresh;

uses Windows, Messages;

procedure RefreshTray;
const
IconSize = 16;
var
TrayWnd: HWnd;
TrayNotifyWnd: HWnd;
ToolbarWnd: HWnd;
X, Y, TrayWidth, TrayHeight: Integer;
TrayRect: TRect;
begin
TrayWnd := FindWindow("Shell_TrayWnd", nil);
if TrayWnd <> 0 then
begin
TrayNotifyWnd := FindWindowEx(TrayWnd, 0, "TrayNotifyWnd", nil);
if TrayNotifyWnd <> 0 then
begin
ToolbarWnd := FindWindowEx(TrayNotifyWnd, 0, "ToolbarWindow32", nil);
if ToolbarWnd <> 0 then
begin
if GetClientRect(ToolbarWnd, TrayRect) then
begin
TrayWidth := TrayRect.Right - TrayRect.Left;
TrayHeight := TrayRect.Bottom - TrayRect.Top;

X := 1;
while X < TrayWidth do
begin
Y := 1;
while Y < TrayHeight do
begin
SendMessage(ToolbarWnd, WM_MOUSEMOVE, 0, X or (Y shl 16));
Inc(Y, IconSize);
end;

Inc(X, IconSize);
end;
end;
end;
end;
end;
end;

begin
RefreshTray;
end.


 
Nimbus ©   (2002-07-16 14:16) [2]

Спасибо огромное! Работает на 100%! Если что - в долгу не останусь. :-)



Страницы: 1 вся ветка

Текущий архив: 2002.09.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-85545
Демонов Е.В.
2002-09-13 15:30
2002.09.26
Как Перерисовать заголовок формы


4-85756
Devid
2002-08-11 09:59
2002.09.26
Извините, за столь простой вопрос, но ответьте на него


3-85400
michael_b
2002-09-05 15:06
2002.09.26
Слышал, что Borland начиная с delphi 7 не поддерживает SQL-links


3-85309
Igoryan
2002-09-04 11:38
2002.09.26
Работа с DBGreed


1-85498
DarkGreen
2002-09-16 14:36
2002.09.26
SetConsoleCP & SetConsoleOutputCP