![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как поместить иконку приложения в IconTray [D3, Win95/98]
АндрейС © (2002-10-04 13:47:00)Как поместить иконку приложения в IconTray
Проблема в том, что в D3 нет (или я не нашел) типа "TNOTIFYICONDATA"
АндрейС (2002-10-09 17:06:00) [1]ОГРОМНОЕ СПАСИБО!!!
Reals (2002-10-07 12:15:00) [2]
function TaskBarIcon( hWindow : THandle; ID : Cardinal; ICON : hicon; CallbackMessage : Cardinal; Tip : String; Typ: Integer ) : Boolean;
var NID : TNotifyIconData;
begin
FillChar( NID, SizeOf( TNotifyIconData ), 0 );
//Удалить иконку из Tray
if Typ=0 then begin
with NID do begin
cbSize := SizeOf( TNotifyIconData );
Wnd := hWindow;
uID := ID;
end;
Result := Shell_NotifyIcon( NIM_DELETE, @NID );
end else
//Добавить иконку в Tray
if Typ=1 then begin
with NID do begin
cbSize := SizeOf( TNotifyIconData );
Wnd := hWindow;
uID := ID;
uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
uCallbackMessage := CallbackMessage;
hIcon := Icon;
if Length( Tip ) > 63 then SetLength( Tip, 63 );
StrPCopy( szTip, Tip );
end;
Result := Shell_NotifyIcon( NIM_ADD, @NID );
end else
//Изменить иконку в Tray
if Typ=2 then begin
with NID do begin
cbSize := SizeOf( TNotifyIconData );
Wnd := hWindow;
uID := ID;
uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
uCallbackMessage := CallbackMessage;
hIcon := Icon;
if Length( Tip ) > 63 then SetLength( Tip, 63 );
StrPCopy( szTip, Tip );
end;
Result := Shell_NotifyIcon( NIM_MODIFY, @NID );
end else Result := False;
end;
Вызов функции:
TaskBarIcon(Handle, 0, LoadIcon(hInst,"MAINICON"), 0,"Sample",1);
Cobalt (2002-10-04 16:35:00) [3]Смотри модуль Shellapi.pas