Книга: Описание языка PascalABC.NET

Класс MultiPictureABC

Класс MultiPictureABC

Класс MultiPictureABC является потомком класса PictureABC и представляет графический объект Набор рисунков, содержащий несколько изображений, одно из которых рисуется на экране.

Конструкторы класса MultiPictureABC

constructor Create(x,y: integer; fname: string);

Создает набор рисунков, состоящий из одного рисунка, загружая его из файла с именем fname. После создания рисунок отображается на экране в позиции (x,y). Остальные рисунки добавляются методом Add

constructor Create(x,y: integer; p: Picture);

Создает набор рисунков, состоящий из одного рисунка, хранящегося в переменной p. После создания рисунок отображается на экране в позиции (x,y). Остальные рисунки добавляются методом Add

constructor Create(x,y,w: integer; p: Picture);

Создает набор рисунков из объекта p типа Picture. Объект p должен хранить последовательность изображений одного размера, расположенных по горизонтали. Каждое изображение считается имеющим ширину w. Если ширина рисунка в объекте p не кратна w, то возникает исключение. После создания первый рисунок из набора отображается на экране в позиции (x,y)

constructor Create(x,y,w: integer; fname: string);

Создает набор рисунков, загружая его из файла fname. Файл должен хранить последовательность изображений одного размера, расположенных по горизонтали. Каждое изображение считается имеющим ширину w. Если ширина рисунка в файле fname не кратна w, то возникает исключение. После создания первый рисунок из набора отображается на экране в позиции (x,y)

constructor Create(g: MultiPictureABC);

Создает набор рисунков - копию набора рисунков g

Свойства класса MultiPictureABC

property CurrentPicture: integer;

Номер текущего рисунка

property Count: integer;

Количество рисунков в наборе

Методы класса MultiPictureABC

procedure Add(fname: string);

Добавляет рисунок к набору, загружая его из файла fname. Рисунок должен иметь те же размеры, что и все рисунки из набора

procedure ChangePicture(fname: string);

Меняет набор рисунков на набор, состоящий из одного рисунка, загружая его из файла с именем fname

procedure ChangePicture(w: integer; fname: string);

Меняет набор рисунков на набор, загружая его из файла с именем fname. Файл должен хранить последовательность изображений одного размера, расположенных по горизонтали. Каждое изображение считается имеющим ширину w

procedure NextPicture;

Циклически переходит к следующему рисунку из набора

procedure PrevPicture;

Циклически переходит к предыдующему рисунку из набора

function Clone: MultiPictureABC;

Возвращает клон набора рисунков

Свойства, унаследованные от класса 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;

Уничтожает графический объект

Оглавление книги


Генерация: 1.752. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз