Класс ObjectBoardABC
Класс
ObjectBoardABC является потомком класса
BoardABC и представляет графический
объект "Доска с объектами".
| Конструкторы класса ObjectBoardABC |
constructor Create(x,y,nx,ny,szx,szy: integer; cl: GColor);
Создает доску с объектами nx на
ny клеток цвета cl с размером клетки (szx, szy) в позиции (x,
y).
|
constructor Create(g: ObjectBoardABC);
Создает доску с объектами - копию доски g
|
| Методы класса ObjectBoardABC |
procedure DestroyObject(x,y: integer);
Удаляет объект в клетке с координатами ( x,
y)
|
property Items[x,y: integer]: ObjectABC read GetObject write SetObject; default;
Объект в клетке с координатами ( x, y)
|
procedure SwapObjects(x1,y1,x2,y2: integer);
Меняет местами объекты в клетках с координатами ( x1,
y1) и (x2, y2)
|
function Clone: ObjectBoardABC;
Возвращает клон доски с объектами |
| Свойства, унаследованные от класса BoardABC |
property DimX: integer;
Количество клеток доски по горизонтали |
property DimY: integer;
Количество клеток доски по вертикали |
property CellSizeX: integer;
Размер клетки по горизонтали |
property CellSizeY: integer;
Размер клетки по вертикали |
| Свойства, унаследованные от класса BoundedObjectABC |
property BorderColor: GColor;
Цвет границы |
property BorderWidth: integer;
Ширина границы |
property Bordered: boolean;
Имеет ли объект границу (по умолчанию True)
|
property Filled: boolean;
Заполнена ли внутренность объекта (по умолчанию True)
|
| Методы, унаследованные от класса BoundedObjectABC |
procedure SetDrawSettings;
Защищенный метод. Устанавливает атрибуты пера и кисти перед рисованием |
| Свойства, унаследованные от класса 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; override;
Перемещает графический объект на вектор, задаваемый свойствами dx, dy
|
procedure Scale(f: real); override;
Масштабирует графический объект в f раз ( f>1 - увеличение, 0<f<1 - уменьшение)
|
procedure ToFront;
Переносит графический объект на передний план |
procedure ToBack;
Переносит графический объект на задний план |
function Bounds: System.Drawing.Rectangle;
Возвращает прямоугольник, определяющий границы графического объекта |
function PtInside(x,y: integer): boolean;
override;
Возвращает 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; override;
Возвращает клон графического объекта |
procedure Draw(x,y: integer; g: Graphics);
override;Защищенная. Не вызывается явно. Переопределяется для каждого графического класса. Рисует объект на объекте g: Graphics |
destructor Destroy;
Уничтожает графический объект |