Архив за 15 апреля 2008

Apr15

Градиентная заливка

В DRKB и DelphiWorld есть примеры заполнения канвы градиентом. От самой простой до довольно профессиональной. Но ведь эта функция уже есть в GraphUtil, "зачем изобретать велосипед"?

 

uses
  GraphUtil;

 

procedure PaintGradient(ACanvas: TCanvas; AColor: TColor; ARect: TRect; ADirection: TGradientDirection);
var
  lColor: TColor;
begin
  lColor := GetHighLightColor(AColor, 50);
  GradientFillCanvas(ACanvas, lColor, AColor, ARect, gdVertical);
end;

 

Данная функция нарисует квадрат, заполненный градиентом, несмотря на то, что ей передается только один цвет. Не верите? Проверьте ;) .

 

Вообще, советую получше изучать стандартные модули - в них, как я уже говорил, много полезного.