Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Затенить компонент

Delphi , Графика и Игры , Компоненты и Графика

Затенить компонент


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;

Перевод текста на русский язык:

Код, который я предоставил, - это решение на языке программирования Pascal, которое заливает все элементы формы цветом, создавая прямоугольник вокруг каждого элемента и заполняя его указанным цветом.

Вот подробное описание того, что код делает:

  1. Процедура ShadeIt принимает четыре параметра:
  2. f: Основная форма.
  3. c: Элемент формы, который нужно заливать (это может быть любым типом элемента).
  4. Width: Ширина прямоугольника, который будет нарисован вокруг элемента.
  5. Color: Цвет, используемый для заполнения прямоугольника.

  6. Внутри ShadeIt проверяется, является ли элемент видимым. Если он видимый,

    • Получается прямоугольник границ элемента и корректируются его координаты, добавляя указанную ширину на все стороны (левая, верхняя, правая, нижняя).
    • Сохраняется текущий цвет кисти в канвасе формы.
    • Устанавливается цвет кисти в указанный цвет залива и заполняется корректированным прямоугольником этим цветом.
    • Наконец, устанавливается цвет кисти обратно в его исходное состояние.
  7. В FormPaint, которое является обработчиком события OnPaint формы,

    • Итерируется по всем элементам на форме используя цикл.
    • Для каждого элемента вызывается ShadeIt с текущим элементом, шириной 3 пикселя (как указано в коде) и черным цветом.

Результатом является то, что все элементы на форме будут иметь 3-пиксельный чёрный контур вокруг них.

Процедура ShadeIt изменяет цвет компонента на TForm, а также его границы, для создания эффекта затенения.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




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



:: Главная :: Компоненты и Графика ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100

Время компиляции файла: 2024-05-19 17:53:24
2024-05-20 02:35:26/0.0076580047607422/2