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

Вниз

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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.024 c
1-1101931887
Гость
2004-12-01 23:11
2004.12.19
Delphi 2005 - портится русский текст в Version Info


4-1099675061
hamster
2004-11-05 20:17
2004.12.19
Процесс


11-1084117189
a_legayda@mtu-net.ru
2004-05-09 19:39
2004.12.19
TKOLListBox


1-1102083054
Ольга
2004-12-03 17:10
2004.12.19
Динамическое создание PopupMenu


14-1101956224
Думкин
2004-12-02 05:57
2004.12.19
С днем рождения! 2 декабря