Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Алтернативный прогрессбар, с градиентом...


markers ©   (2004-11-23 13:50:00) 

Народ, подскажите плиз, как замутить может быть свой (Или переделать другой) прогрессбар с градиентом от синего до красного цвета. Заранее сенкс;)


Игорь Шевченко   (2004-11-24 17:25:00) [1]

Обфускатор :)


programania   (2004-11-23 20:39:00) [2]

>>Poirot ©
>А где хоть какой0-нить намёк на стиль программирования?!?!?!
А где хоть какой-нить намёк на прогрессбар? Слабо?
Покажите что сами сделали.
Про стиль любой может рассуждать, а тема о прогрессбаре.


Poirot   (2004-11-23 19:55:00) [3]

>>programania ©   (23.11.04 19:42) [8]
А где хоть какой0-нить намёк на стиль программирования?!?!?!
:)))))))))))))))))))))
Как говорится я плакаю:)))


programania   (2004-11-23 19:42:00) [4]


PROCEDURE POLOSKA(i:tImage;P,MAX:integer);
var
s: pbytearray;
k,n,xx,yy,x1,x2,x3,d3,d2,d1,c1,c2,c3,h,w,cb:integer;
st:string[8];
c: boolean;
begin
w:=i.width; h:=i.height;
if p>max then p:=max;
with i.canvas do begin
st:='  '+intToStr(p*100 div max)+'%  ';
font.color:=$FF0000; font.style:=[fsBold];
textOut((w-textWidth(st)) div 2,(h-textHeight(st)) div 2,st);
n:=w*p div max;
d1:=$60*P div max; d2:=$C0*P div max; d3:=$FF*P div max+90;if d3>255 then d3:=255;
i.picture.bitmap.pixelformat:=pf24bit;

for yy:=0 to h-1 do begin
s:=i.picture.bitmap.scanline[yy];
x1:=0; x2:=1; x3:=2;
k:=abs(yy-h div 2)*3;
c1:=d1-k; if c1<0 then c1:=0;
c2:=d2-k; if c2<0 then c2:=0;
c3:=d3-k; if c3<0 then c3:=0;

cb:=255-k;
for xx:=0 to w-1 do begin
 c:=(s[x1]=255)and(s[x2]=0)and(s[x3]=0);
 if xx<n then begin
   if c then begin s[x1]:=$FF;s[x2]:=$FF;s[x3]:=$FF end else begin s[x1]:=c1; s[x2]:=c2;s[x3]:=c3 end;
 end
 else if not c then begin s[x1]:=255; s[x2]:=cb;s[x3]:=cb end;
 inc(x1,3);inc(x2,3);inc(x3,3);
end;
end;
application.processMessages;
end;
end;


markers   (2004-11-23 17:52:00) [5]

Спасибо;)


cae   (2004-11-23 15:39:00) [6]

http://www.torry.net/quicksearchd.php?SID=204e72a35425071cbf3745542470c5c5&String=GradProgress&Title=Yes


TUser   (2004-11-23 15:03:00) [7]

Есть статья про градиенты. Только там про формы - но разберешься.


markers   (2004-11-23 14:25:00) [8]

А как вообще нарисовать градиент от синего к расному? Я с этим полнейший ....


ламер   (2004-11-23 14:12:00) [9]

а что тут предлагать? переделай TGauge.


markers   (2004-11-23 14:06:00) [10]

а если без него? Неохота ради одного компанента тащить крупный пакет, тем более что их и так у меня несколько штук...... Но всё-равно спасибо!
Может кто-нибудь что-то другое предложит?


TUser   (2004-11-23 14:02:00) [11]

Есть такая библиотека - jedi. Там есть.


Наверх

Титульная страница Поиск, карта сайта Написать письмо