Все бесплатно
    Все ссылки на файлы, расположенные на страницах сайта, добавлены пользователями и доступны для бесплатного скачивания. За содержание этих файлов администрация сайта ответственности не несет.



Вопросы
  Функции дат в SQL
   Категория: Базы данных
  Как соединить несколько файлов в один
   Категория: Текст и строки
  Компонент HotKey
   Категория: Компоненты
  Listbox - элементы вверх-вниз
   Категория: Компоненты
  Подсветить часть текста в DBGrid
   Категория: Компоненты
  Удалить свой же exe-шник
   Категория: Приложение
  Компоненты CoolBar и ControlBar
   Категория: Компоненты
  Как в Memo прокрутить текст
   Категория: Компоненты
  Компонент MainMenu
   Категория: Компоненты

Delphi - База Знаний: Затенение компонента определенным цветом

  << Вернуться к Содержанию  

Функция рисует рамку(затенение) для определенного компонента,
определенным цветом с определенной шириной.

Зависимости: SysUtils

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;
  << Вернуться к Содержанию