Книга: Описание языка PascalABC.NET
Класс ObjectABC
Разделы на этой странице:
Класс ObjectABC
Класс ObjectABC является базовым классом для всех графических объектов ABCObjects. Его основными потомками, определенными в модуле ABCObjects, являются следующие классы: BoundedObjectABC, RectangleABC, SquareABC, EllipseABC, CircleABC, TextABC, RegularPolygonABC, StarABC, PictureABC, MultiPictureABC, BoardABC и ContainerABC. Класс ObjectABC - абстрактный: объекты этого класса не создаются.
Конструкторы класса ObjectABC
constructor Create(x,y,w,h: integer; cl: GColor); Создает графический объект размера (w, h) цвета cl с координатами левого верхнего угла (x, y) |
constructor Create(g: ObjectABC); Создает графический объект - копию объекта g |
Свойства класса ObjectABC
property Left: integer; Отступ графического объекта от левого края |
property Top: integer; Отступ графического объекта от верхнего края |
property Width: integer; Ширина графического объекта |
property Height: integer; Высота графического объекта |
property dx: integer; x-координата вектора перемещения объекта при вызове метода Move. По умолчанию установлено в 0. Для неподвижных объектов может быть использовано для хранения любой дополнительной информации, связанной с объектом |
property dy: integer; y-координата вектора перемещения объекта при вызове метода Move. По умолчанию установлено в 0. Для неподвижных объектов может быть использовано для хранения любой дополнительной информации, связанной с объектом |
property Center: Point; Центр графического объекта |
property Position: Point; Левый верхний угол графического объекта |
property Visible: boolean; Видим ли графический объект |
property Color: GColor; Цвет графического объекта |
property FontColor: GColor; Цвет шрифта графического объекта |
property Text: string; Текст внутри графического объекта |
property TextVisible: boolean; Видимость текста внутри графического объекта |
property TextScale: real; Масштаб текста относительно размеров графического объекта, 0<=TextScale<=1. При TextScale=1 текст занимает всю ширину или высоту объекта. По умолчанию TextScale=0.8 |
property FontName: string; Имя шрифта для вывода свойства Text |
property FontStyle: FontStyleType; Стиль шрифта для вывода свойства Text |
property Number: integer; Целое число, выводимое в центре графического объекта. Для вывода используется свойство Text |
property RealNumber: real; Вещественное число, выводимое в центре графического объекта. Для вывода используется свойство Text. Вещественное число выводится с одним знаком после десятичной точки |
property Owner: ContainerABC; Владелец графического объекта, ответственный также за перерисовку графического объекта внутри себя (по умолчанию nil) |
Методы класса ObjectABC
procedure MoveTo(x,y: integer); Перемещает левый верхний угол графического объекта к точке (x,y) |
procedure MoveOn(a,b: integer); Перемещает графический объект на вектор (a,b) |
procedure Move; virtual; Перемещает графический объект на вектор, задаваемый свойствами dx,dy |
procedure Scale(f: real); virtual; Масштабирует графический объект в f раз (f>1 - увеличение, 0<f<1 - уменьшение) |
procedure ToFront; Переносит графический объект на передний план |
procedure ToBack; Переносит графический объект на задний план |
function Bounds: System.Drawing.Rectangle; Возвращает прямоугольник, определяющий границы графического объекта |
function PtInside(x,y: integer): boolean; virtual; Возвращает True, если точка (x,y) находится внутри графического объекта, и False в противном случае |
function Intersect(g: ObjectABC): boolean; Возвращает True, если изображение данного графического объекта пересекается с изображением графического объекта g, и False в противном случае. Белый цвет считается прозрачным и не принадлежащим объекту |
function IntersectRect(r: System.Drawing.Rectangle): boolean; Возвращает True, если прямоугольник графического объекта пересекается прямоугольником r, и False в противном случае |
function Clone0: ObjectABC; virtual; Возвращает клон графического объекта |
function Clone: ObjectABC; Возвращает клон графического объекта |
procedure Draw(x,y: integer; g: Graphics); virtual; Защищенная. Не вызывается явно. Переопределяется для каждого графического класса. Рисует объект на объекте g: Graphics |
destructor Destroy; Уничтожает графический объект |
- Модуль ABCObjects: обзор
- Диаграмма классов
- Класс ObjectABC
- Класс BoundedObjectABC
- Класс RectangleABC
- Класс SquareABC
- Класс EllipseABC
- Класс CircleABC
- Класс RoundRectABC
- Класс RoundSquareABC
- Класс TextABC
- Класс RegularPolygonABC
- Класс StarABC
- Класс PictureABC
- Класс MultiPictureABC
- Класс BoardABC
- Класс ObjectBoardABC
- Мультирисунки
- Массив всех графических объектов Objects
- Переменные, процедуры и функции модуля ABCObjects
- Ускорение перерисовки графических объектов
- Совмещение графического вывода модулей ABCObjects и GraphABC