Класс TCanvas – холст

Объекты, которым доступны графические возможности, имеют свойство TCanvas (одновременно это класс, имеющий и свои свойства). Холст это прямоугольная область, которая состоит из отдельных точек (пикселов), каждая из которых может иметь свой цвет. Пиксель имеет координаты:

  • по горизонтали X,
  • по вертикали Y.

Отсчет от левого верхнего угла (0, 0). Графический объект – совокупность графических примитивов:

  • точки,
  • линии,
  • фигуры.

Для их вычерчивания используются методы объекта Canvas. Их формат:

Object.Canvas.Method;

Если в графическом объекте прорисовывается много графических примитивов, то целесообразно включить их в оператор With. Пример:

with Object.Canvas do

begin

Method1;

{……..}

Method N;

end;

Холст имеет свойства, часть из которых одновременно являются классами.

Класс Описание
TPen Перо. Рисует линии.
TBrush Кисть. Закрашивает замкнутые области.
TFont Шрифт.
TStyle Стиль.
TColor Цвет.

Основной объект со свойством Canvas – форма. Есть и другие компоненты, имеющие свойство Canvas. Например, Label.

Внимание. Холст формы и холст метки на форме разные вещи.

Для навигации по холсту определены классы:

  • TPoint – точка, задаваемая двумя координтами (x, y).
  • TRect – прямоугольная область, задаваемая парой точек (APoint1 – левый верхний и APoint2 – правый нижний углы области), либо четырьмя границами области (левая – ALeft, верхняя – ATop, правая – Aright, нижняя – ABottom).

Экземпляр точки APoint создается функцией:

APoint:=Rect(x, y);

Экземпляр области ARect создается функцией, которая имеет две реализации. При использовании точек:

ARect:=Rect(APoint1, APoint2);

При использовании границ:

ARect:=Rect(ALeft, ATop, ARight,ABottom);

Twitter SEO Community Ваау! News2.ru Chipp Korica SMI2 Google Bookmarks Digg I.ua Закладки Yandex Linkstore Myscoop Communizm Ru-marks Webmarks Ruspace Linkomatic Kli.kz Web-zakladka Zakladok.net Reddit delicious Ma.gnolia Technorati Slashdot Yahoo My Web БобрДобр.ru Memori.ru rucity.com МоёМесто.ru Mister Wong

Copyright © 2009-2010 Программирование на паскале.