Отступ графического объекта от левого края
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)
|
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; Уничтожает графический объект |
Модуль Timers
Модуль Timers содержит класс Timer, позволяющий выполнять определенные действия через равные промежутки времени. В конструкторе класса Timer указывается промежуток времени и имя процедуры без параметров - обработчика события таймера, вызываемой через указанный промежуток времени.
Класс Timer имеет следующий интерфейс:
type
Timer = class
constructor (ms: integer; TimerProc: procedure);
procedure Start;
procedure Stop;
property Enabled: boolean read write;
property Intervaclass="underline" integer read write;
end;
Члены класса Timer описаны в следующей таблице:
|
constructor (ms: integer; TimerProc: procedure); Создает таймер, выполняющий каждые ms миллисекунд действие, содержащееся в процедуре без параметров TimerProc, называемой обработчиком таймера. Созданный таймер необходимо запустить, вызвав метод Start |
|
procedure Start; Запускает таймер |
|
procedure Stop; Останавливаетает таймер |
|
property Enabled: boolean read write; Запущен ли таймер |
|
property Intervaclass="underline" integer read write; Промежуток времени между вызовами обработчика таймера |
Пример использования таймера.
Средства обучения в PascalABC.NET
Исполнители
Что такое исполнители
Исполнителем будем называть устройство, способное выполнять определенный набор команд. Обычно с исполнителем связана некоторая среда, в которой он работает.
Традиционно концепция исполнителей используется для быстрого обучения основным конструкциям языка программирования при проведении занятий в средних классах школы. В PascalABC.NET реализованы исполнители Робот и Чертежник, описанные в учебнике А. Г. Кушниренко, Г. В. Лебедева и Я. Н. Зайдельмана "Информатика 7-9 классы", М., 2001. Следует отметить, что данный учебник уже не используется для обучения в школе, однако он является наиболее удачным и по интеграции исполнителей в процесс обучения начальному программированию, и по набору задач.