procedure Animate2Tray(wnd : cardinal);
var wr, tr : TRect;
tw : cardinal;
TrayWnd, TrayNWnd, ClockWnd : Cardinal;
pt : TPoint;
begin
TrayWnd := FindWindow('Shell_TrayWnd', nil);
TrayNWnd := FindWindowEx(TrayWnd, 0, 'TrayNotifyWnd', nil);
ClockWnd := FindWindowEx(TrayNWnd, 0, 'TrayClockWClass', nil);
GetWindowRect(wnd, wr);
//GetWindowRect(GetDesktopWindow, tr);
GetWindowRect(ClockWnd, tr);
//tr.left := tr.Right - 16;
//tr.Top := tr.Bottom - 16;
pt.X := 0; pt.Y := 0;
ClientToScreen(ClockWnd, pt);
tr.Left := pt.X;
tr.Top := pt.Y;
DrawAnimatedRects(wnd, IDANI_CAPTION, wr, tr);
end;
Как определить координаты иконки в трее?
-------------
Цитата:
Originally posted by zvitaliy
-------------
-------------
А какова цель ?
Цитата:
Originally posted by mail0
А какова цель ?
А какова цель ?
WinApi функция работы с треем Shell_NotifyIcon имеет ограничение хинта до 64 символов, Что есть маловато. Создал свой хинт с (класс THintWindow), Но неудобно позиционировать его на экране не зная координат окна программы, в моем случае, иконки в трее )
Цитата:
Originally posted by zvitaliy
WinApi функция работы с треем Shell_NotifyIcon имеет ограничение хинта до 64 символов, Что есть маловато. Создал свой хинт с (класс THintWindow), Но неудобно позиционировать его на экране не зная координат окна программы, в моем случае, иконки в трее )
WinApi функция работы с треем Shell_NotifyIcon имеет ограничение хинта до 64 символов, Что есть маловато. Создал свой хинт с (класс THintWindow), Но неудобно позиционировать его на экране не зная координат окна программы, в моем случае, иконки в трее )
А может лучше воспользоваться стандартным baloon hint`ом ?
Цитата:
Originally posted by mail0
А может лучше воспользоваться стандартным baloon hint`ом ?
А может лучше воспользоваться стандартным baloon hint`ом ?
Мне нужно совместимость со всеми "Окнами". Кроме того мой хинт уже работает, осталось только спозиционировать его!
Тема, конечно старая, не если кто искать будет. Вот кусок моего кода - показывает аниацию "сворачивания окна в трей".