Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
tvp.doc
Скачиваний:
2
Добавлен:
08.11.2019
Размер:
1.12 Mб
Скачать

Приложение. Свойства и методы класса tCanvas

Cвойства TCanvas:

property Pen: TPen; Перо. Свойство задает различные атрибуты линий.

property Brush: TBrush; Кисть. Свойство задает цвет и шаблон заполнения.

property Font: TFont; Шрифт

property Pixels(X,Y: integer); Применяется для установки и чтения цвета точки с координатам X (слева направо начиная с нуля ) и Y (сверху вниз начиная с нуля). Координаты относятся к клиентской части компонента, имеющего Canvas.

Свойства пера:

property Color: TColor; Цвет линии.

property Width: integer; Толщина линии в пикселах

property Style: TPenStyle; TPenStyle=(psSolid, psDash, psDot, psDashDot, psDashDotDot, psClear, psInsideFrame); Cтиль линии (пунктир, штрих-пунктир и т.п.).

property Mode: TPenMode; TPenMode = (pmBlack, pmWhite, pmNop, pmNot, pmCopy, pmNotCopy, pmMergePenNot, pmMaskPenNot, pmMergeNotPen, pmMaskNotPen, pmMerge, pmNotMerge, pmMask, pmNotMask, pmXor, pmNotXor); Режим рисования. Устанавливает способ взаимодействия цвета пера и цвета поверхности Canvas.

Свойства кисти:

property Color: TColor; Цвет закраски.

property Style: TBrushStyle; TBrushStyle ={ bsSolid, bsCross, bsClear, bsDiagCross, bsBDiagonal, bsHorizontal, bsFDiagonal, bsVertical}; Шаблон закраски.

property Bitmap: TBitmap; Произвольный шаблон закраски.

Cвойства шрифта:

property Name:TFontName; Содержит имя шрифта (например,Times New Roman).

property Style: TFontStyles; TFontStyles = set of TFontStyle; TFontStyle = (fsBold, fsItalic, fsUnderline, fsStrikeOut); Содержит начертание шрифта (например, курсив).

property Color: TColor; Цвет шрифта.

property Pitch: TFontPitch; TFontPitch = (fpDefault, fpVariable, fpFixed); Устанавливает тип шрифта - моноширинный или пропорциональный.

property Size: integer; Размер шрифта в пунктах.

Методы TCanvas:

procedure Arc (X1, Y1, X2, Y2, X3, Y3, X4, Y4: integer); Рисует сегмент эллипса. Сегмент рисуется против часовой стрелки. Эллипс определяется описывающим прямоугольником (X1,Y1) - (X2,Y2). Начальная и конечные точки сегмента лежат на пересечении эллипса и лучей, проведенных из его центра через точки (X3,Y3) и (X4,Y4), соответственно.

procedure Chord (X1, Y1, X2, Y2, X3, Y3, X4, Y4: integer); Рисует хорду и заливает отсекаемую ею часть эллипса. Эллипс и координаты хорды определяются, как в методе Arc.

procedure Ellipse (X1, Y1, X2, Y2: integer); Рисует и закрашивает текущей кистью эллипс, вписанный в прямоугольник (X1,Y1) - (X2,Y2).

procedure LineTo (X, Y: Integer); Проводит линию текущим пером из текущей точки в точку (X,Y).

procedure MoveTo (X, Y: Integer); Перемещает текущее положение пера в точку (X,Y).

procedure CopyRect (const Rect: TRect; Canvas: TCanvas; const Source: TRect); Производит копирование прямоугольника Source из канвы Canvas в прямоугольник Dest в текущую канву.

procedure Draw (X, Y: Integer; Graphic: TGraphic); Вызывает метод рисования объекта Graphic в области с верхним углом (X,Y).

procedure StretchDraw (const Rect: TRect; Graphic: TGraphic); Вызывает метод рисования объекта Graphic в прямоугольнике Rect. Если размеры их не совпадают Graphic масштабируется.

procedure DrawFocusRect (const Rect: TRect); Рисует прямоугольную рамку из точек. Повторное рисование приводит изображение к первоначальному виду.

procedure FillRect (const Rect: Trect); Производит закраску прямоугольника текущей кистью.

procedure FloodFill (X,Y: integer; Color: TColor; FillStyle: TFillStyle); TFillStyle =(fsSurface, fsBorder); Производит заливку области текущей кистью. Процесс начинается с точки (X,Y). Если режим FillStyle равен FsSurface, то он продолжается до тех пор, пока есть соседние точки с цветом Color. В режиме fsBorder закрашивание, наоборот,прекращается при выходе на границу с цветом Color.

procedure FrameRect (const Rect: TRect); Производит «оконтуривание» цветом текущей кисти.

procedure Pie (X1, Y1, X2, Y2, X3, Y3, X4, Y4: integer); Рисует сектор эллипса, определяемого описывающим прямоугольником (X1,Y1) - (X2,Y2). Стороны сектора лежат на лучах, проведенных из его центра через точки (X3,Y3) и (X4,Y4).

procedure Polygon (const Points: array of TPoint); Строит многоугольник по координатам Points. Внутренняя область закрашивается.

procedure Polyline (const Points: array of TPoint); Строит ломаную линию по координатам Points.

procedure PolyBezier (const Points: array of TPoint); Строит кривую Безье (кубический сплайн) по координатам Points.

procedure PolyBezierTo (const Points: array of TPoint); Строит кривую Безье (кубический сплайн) по координатам Points. Текущая точка используется в качестве первой.

procedure Rectangle (X1, Y1, X2, Y2: integer); Рисует прямоугольник с верхним левым углом (X1,Y1) и нижним правым в (X2,Y2).

procedure Refresh; Приводит Canvas к заданному по умолчанию состоянию.

procedure RoundRect (X1, Y1, X2, Y2, X3, Y3: integer); Рисует прямоугольник с закругленными углами. Закругления рисуются как сегменты эллипса с размерами осей по горизонтали и вертикали X3 и Y3.

procedure TextHeight (const Text: string): integer; Возвращает высоту строки в пикселах (точках).

procedure TextOut (x,y: integer; const Text: string); Выводит строку в позицию (x,y).

procedure TextWidth (const Text: string): integer; Возвращает ширину строки в пикселах.

property PenPos: TPoint; Содержит текущую позицию пера.

Выше были использованы типы:

type

TPoint = record {Координаты точки}

X: Longint;

Y: Longint;

end;

TRect=record {Координаты прямоугольника}

case Integer of

0: (Left, Top, Right, Bottom: Integer);

1: (TopLeft, BottomRight: TPoint);

end;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]