Затенение компонента определенным цветом
Автор: [NIKEL]
WEB-сайт: http://delphibase.endimus.com
{ **** UBPFD *********** by delphibase.endimus.com ****
>> Затенение компонента определенным цветом
Функция рисует рамку(затенение) для определенного компонента,
определенным цветом с определенной шириной.
Зависимости: SysUtils
Автор: [NIKEL], nikel@pisem.net, Norilsk
Copyright: Some help
Дата: 15 сентября 2002 г.
***************************************************** }
procedure ShadeIt(f: TForm; c: TControl; Width: Integer; Color: TColor);
var
rect: TRect;
old: TColor;
begin
if (c.Visible) then
begin
rect := c.BoundsRect;
rect.Left := rect.Left + Width;
rect.Top := rect.Top + Width;
rect.Right := rect.Right + Width;
rect.Bottom := rect.Bottom + Width;
old := f.Canvas.Brush.Color;
f.Canvas.Brush.Color := Color;
f.Canvas.fillrect(rect);
f.Canvas.Brush.Color := old;
end;
end;
// Пример использования:
procedure TForm1.FormPaint(Sender: TObject);
var
i: Integer;
begin
for i := 0 to Self.ControlCount - 1 do
ShadeIt(Self, Self.Controls[i], 3, clBlack);
end;
|