Главная страница
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.025 c
1-1102319515
Игорь нтк
2004-12-06 10:51
2004.12.19
восстановление исходного текста


3-1100690986
Dionnis
2004-11-17 14:29
2004.12.19
Индексы


8-1094127115
VasRog
2004-09-02 16:11
2004.12.19
Векторная графика


1-1101935712
Змей
2004-12-02 00:15
2004.12.19
Горячая клавиша


4-1099291899
Dimka_a
2004-11-01 09:51
2004.12.19
Как узнать размер файла?