Вниз
Скачать: CL | DM;

KOLTrayIcon не может корректно отобразить 256-цветную ico в tray   Найти похожие ветки 

 
Ал   (2003-10-17 11:02) [0]

Захотелось использовать в Tray 256-цветную пиктограмму, но она отображается с цветовыми искажениями, хотя эта же пиктограмма прекрасно отображается и в заголовке окна и в Explorer. Подскажите, в чем дело?


 
mdw ©   (2003-10-17 12:08) [1]

У меня тоже самое. Это проблема LoadIcon. Также заметил, что LoadIcon грузит иконку с размерами по умолчанию(32X32), т.е если исходный размер 16X16, то масштабирует в 32X32. А при выводе в TrayIcon происходит обратное масштабирование. Искажения после двойного масштабирования получаются не слабые...

Лечится использованием вместо LoadIcon -
LoadImage(hInstance, "ZJMCTRLMAINFORM_TRAYICON1", IMAGE_ICON, 16, 16, 0)


 
BorisMor ©   (2003-10-17 12:25) [2]

Подскажите как хинт добаваить к TrayIcon ?
(Что бы при подведение к иконуе появллся)


 
Ал   (2003-10-17 12:43) [3]

БорисМору:

TrayIcon.Tooltip := "Мой хинт";


 
mike.dld ©   (2003-10-17 13:04) [4]

> BorisMor ©   (17.10.03 12:25) [2]

Юзаю такое и всё работает:


procedure AddTrayIcon(hWindow: THandle; ID: Cardinal; Icon: HICON; CallbackMessage: Cardinal; Tip: string; Cmd: Byte);
var NID : tNotifyIconData;
begin
 FillChar(NID,SizeOf(TNotifyIconData),0);
 with NID do begin
   cbSize := SizeOf(TNotifyIconData);
   Wnd := hWindow;
   uID := ID;
   if Cmd <> NIM_DELETE then begin
     uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
     uCallbackMessage := CallbackMessage;
     hIcon := Icon;
     if Length(Tip) > 63 then SetLength(Tip,63);
     lstrcpyn(szTip,PAnsiChar(Tip),63);
   end;
 end;
 Shell_NotifyIcon(Cmd, @NID);
end;


А насчёт цветовых искажений - это глюк Винды имхо, т.к. в ХР иконки отображаются нормально, а во всех более ранних версиях максимум - 16 цветов


 
mdw ©   (2003-10-17 14:54) [5]

>А насчёт цветовых искажений - это глюк Винды имхо, т.к. в ХР иконки отображаются нормально, а во всех более ранних версиях максимум - 16 цветов
У меня отображаются нормально и под w2000 и под w98.


 
Yury Sidorov   (2003-10-17 22:19) [6]

2 mdw: Отображается правильно 256 цветная иконка в трее на Windows 98 и 2000? Слабо верится, т.к. похоже во всех Windows кроме ХР для трея используется 16-цветный imagelist.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
1-1082207475
Rasa
2004-04-17 17:11
2004.05.02
Как изменить каретку в Memo?


3-1080813264
Гриша1
2004-04-01 13:54
2004.05.02
Работа с параметрами в SQL.


1-1081864133
Viking
2004-04-13 17:48
2004.05.02
Вопрос по работе с Delphi Open Tools Api


14-1081494717
Knight
2004-04-09 11:11
2004.05.02
Варнинг при старте БИОСА...


14-1081545637
vertal
2004-04-10 01:20
2004.05.02
Property




   Наверх