Категории
Самые читаемые

Описание языка PascalABC.NET - W Cat

Читать онлайн Описание языка PascalABC.NET - W Cat

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 52 53 54 55 56 57 58 59 60 ... 101
Перейти на страницу:

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;

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

Модуль Timers

Модуль Timers содержит класс Timer, позволяющий выполнять определенные действия через равные промежутки времени. В конструкторе класса Timer указывается промежуток времени и имя процедуры без параметров - обработчика события таймера, вызываемой через указанный промежуток времени.

Класс Timer имеет следующий интерфейс:

type

Timer = class

constructor (ms: integer; TimerProc: procedure);

procedure Start;

procedure Stop;

property Enabled: boolean read write;

property Interval: integer read write;

end;

Члены класса Timer описаны в следующей таблице:

constructor (ms: integer; TimerProc: procedure);

Создает таймер, выполняющий каждые ms миллисекунд действие, содержащееся в процедуре без параметров TimerProc, называемой обработчиком таймера. Созданный таймер необходимо запустить, вызвав метод Start

procedure Start;

Запускает таймер

procedure Stop;

Останавливаетает таймер

property Enabled: boolean read write;

Запущен ли таймер

property Interval: integer read write;

Промежуток времени между вызовами обработчика таймера

Пример использования таймера.

Средства обучения в PascalABC.NET

Исполнители

Что такое исполнители

Исполнителем будем называть устройство, способное выполнять определенный набор команд. Обычно с исполнителем связана некоторая среда, в которой он работает.

Традиционно концепция исполнителей используется для быстрого обучения основным конструкциям языка программирования при проведении занятий в средних классах школы. В PascalABC.NET реализованы исполнители Робот и Чертежник, описанные в учебнике А. Г. Кушниренко, Г. В. Лебедева и Я. Н. Зайдельмана "Информатика 7-9 классы", М., 2001. Следует отметить, что данный учебник уже не используется для обучения в школе, однако он является наиболее удачным и по интеграции исполнителей в процесс обучения начальному программированию, и по набору задач.

Кроме того, исполнители в PascalABC.NET активно используются в системе проверяемых заданий -- одной из ключевых учебных особенностей системы PascalABC.NET.

См. также пример выполнения задания a1 для исполнителя Робот.

Исполнитель Робот

Исполнитель Робот действует на прямоугольном клеточном поле. Между некоторыми клетками, а также по периметру поля находятся стены. Основная цель Робота ¦-- закрасить указанные клетки и переместиться в конечную клетку.

Исполнитель Робот и поле, на котором он работает, отображаются следующим образом:

Здесь большой желтый квадрат изображает Робота, маленький желтый квадрат в левом верхнем углу клетки -- конечное положение Робота, черными точками помечены клетки, которые надо закрасить.

Команды исполнителя Робот содержатся в модуле Robot:

Right – перемещает Робота вправо;

Left – перемещает Робота влево;

Up – перемещает Робота вверх;

Down – перемещает Робота вниз;

Paint – закрашивает текущую ячейку;

WallFromLeft – возвращает True если слева от Робота стена;

WallFromRight – возвращает True если справа от Робота стена;

WallFromUp – возвращает True если сверху от Робота стена;

WallFromDown – возвращает True если снизу от Робота стена;

FreeFromLeft – возвращает True если слева от Робота свободно;

FreeFromRight – возвращает True если справа от Робота свободно;

FreeFromUp – возвращает True если сверху от Робота свободно;

FreeFromDown – возвращает True если снизу от Робота свободно;

CellIsPainted – возвращает True если ячейка, в которой находится Робот, закрашена;

CellIsFree – возвращает True если ячейка, в которой находится Робот, не закрашена.

Для вызова задания для исполнителя Робот используется следующий шаблон программы:

uses Robot;

begin

Task('c1');

Здесь Task -- процедура, содержащаяся в модуле Robot и вызывающая задание с указанным именем.

Имеются следующие группы заданий для исполнителя Робот:

a – вводные задания;

c – цикл с параметром;

if – логические выражения;

w – циклы с условием;

сif – циклы + логические выражения;

count – переменные-счетчики;

cc – вложенные циклы;

p – процедуры без параметров;

pp – процедуры с параметрами.

Для создания стандартного поля размера 9 x 11 используется процедура StandardField без параметров, а для создания поля размера N x M -- процедура Field(N,M). Робот при этом помещается в центр поля.

Исполнитель Чертежник

Исполнитель Чертежник предназначен для построения рисунков и чертежей на плоскости с координатами. Чертежник имеет перо, которое он может поднимать, опускать и перемещать. При перемещении опущенного пера за ним остается след.

Исполнитель Чертежник и поле, на котором он работает, отображаются на экране следующим образом:

Здесь маленький квадрат изображает Чертежника, красным цветом изображены отрезки, которые надо нарисовать, а синим -- уже нарисованные Чертежником отрезки. Когда перо Чертежника опущено, он изображается квадратом меньшего размера.

Команды исполнителя Чертежник содержатся в модуле Drawman:

ToPoint(x,y) – перемещает перо Чертежника в точку (x,y);

OnVector(a,b)– перемещает перо Чертежника на вектор (a,b);

PenUp – поднимает перо Чертежника;

PenDown – опускает перо Чертежника.

Для вызова задания для исполнителя Чертежник используется следующий шаблон программы:

uses Drawman;

begin

Task('c1');

В конце программы перо Чертежника должно быть поднято и находиться в начале координат.

Здесь Task ¦-- процедура, содержащаяся в модуле Drawman и вызывающая задание с указанным именем.

1 ... 52 53 54 55 56 57 58 59 60 ... 101
Перейти на страницу:
На этой странице вы можете бесплатно скачать Описание языка PascalABC.NET - W Cat торрент бесплатно.
Комментарии