Форум: "WinAPI";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];
ВнизDinamicTray Найти похожие ветки
← →
focor (2004-10-24 14:07) [0]Как поместить в трей progreesbar?(Как в Процессах у XP)
← →
Profi © (2004-10-24 15:08) [1]focor (24.10.04 14:07)
Нарисуй несколько иконок, с разными показателями, и присваевой ту, которая нужна!
← →
GuAV © (2004-10-24 23:57) [2]Profi © (24.10.04 15:08) [1]
Хороший способ.
Если всё же не устраивает, то можно создавать иконку из битмапа с помощью CreateIconIndirect.
Вот так у меня получалось:
ИнициализацияtempDC:=GetDC(0);
IconDC:=CreateCompatibleDC(tempDC);
IconBmp:=CreateCompatibleBitmap(tempDC,16,16);
ReleaseDC(0,tempDC);
SelectObject(IconDC,IconBmp);
with IconInfo do
begin
fIcon:=true;
hbmMask:=IconBmp;
hbmColor:=IconBmp;
end;
Icon:=CreateIconIndirect(IconInfo);
изменение// работа с bmpDC
DestroyIcon(Icon);
Icon:=CreateIconIndirect(IconInfo);
финализацияDestroyIcon(Icon);
DeleteDC(IconDC);
DeleteObject(IconInfo.hbmColor);
← →
focor (2004-11-03 08:20) [3]Спасибо за помощь,но хотелось бы чтоб данные снимались напямую с прогресса
← →
Cobalt © (2004-11-03 13:09) [4]Тогда напиши функцию, которая бы изменяла картинку иконки (в зависимости от параметра прогресса), а затем просто обновляй её в трее.
← →
++MASTER++ © (2004-11-03 13:34) [5]Вытяни из системной библиотеке в Windows\System32\, помойму из shell32.dll(если там их нет то поищи сам в той же директории) картинки стандартных иконок для отображения процессов. А лучше скачай Microangello и сохрани все системные иконки в своей папочке, чтобы они были под рукой. Можешь нарисовать свои иконки под тип ProgressBar, кстати тоже в Microangello. Теперь у тебя есть иконки, лучше чтобы их было чётное число, а самое лучшее штук 10. Переименуй их в соответствии с номером значения прогресс бара. Ну а теперь создай функцию, считывай свои данные, масштабируй их в соответствии с нумерацией иконок и загружай в Tray иконку с таким же названием. ВСЁ!!! Кстати, программеры WINDOWS XP делают так же, только грузят иконки напрямую из DLL. Что не понял спрашивай...
← →
KSergey © (2004-11-03 15:39) [6]> [5] ++MASTER++ © (03.11.04 13:34)
Чем ваш ответ от [1] отличается?
> [3] focor (03.11.04 08:20)
> но хотелось бы чтоб данные снимались напямую с прогресса
Это как??
← →
wal © (2004-11-03 16:17) [7]> [3] focor (03.11.04 08:20)
> но хотелось бы чтоб данные снимались напямую с прогресса
Это надо свой компонент написать, TCoolTrayProgressBar.
С уважением.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.034 c