Переключение между окнами программ и их закрытие в среде Turbo Pascal — КиберПедия 

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Переключение между окнами программ и их закрытие в среде Turbo Pascal

2017-05-18 2294
Переключение между окнами программ и их закрытие в среде Turbo Pascal 4.75 из 5.00 4 оценки
Заказать работу

Иногда при создании программ возникает необходимость работы сразу с несколькими PAS-файлами. При этом все они могут быть открыты в среде Turbo Pascal. Для переключения между окнами нескольких открытых файлов программ используется клавиша [F6]. На рисунке ниже показан порядок переключения между четырьмя открытыми PAS-файлами. Смена окон программ происходит циклически, т.е. при смене окна последнего открытого файла появляется окно PAS-файла, открытого первым.

Для закрытия окна с текстом программы в среде Turbo Pascal необходимо нажать комбинацию "горячих клавиш" [Alt] + [F3] (см. рисунок ниже).

Для выхода из среды программирования Turbo Pascal в Windows нужно нажать комбинацию клавиш [Alt] + [X] (здесь [X] - клавиша клавиатуры с латинской буквой "икс").

9.7.6. Перечень наиболее часто встречаемых "горячих клавиш" в среде Turbo Pascal

Комбинация клавиш Назначение
[F10] Вход/выход в/из меню среды Turbo Pascal.
[F1] Вызов помощи по вопросам работы в текущем окне среды Turbo Pascal.
[Ctrl] + [F1] Вызов контекстной помощи (получение подсказки по работе с подсвеченной функцией или процедурой), либо вызов алфавитного перечня всех стандартных процедур, функций и служебных слов.
[F2] Сохранение текста программы в файл с расширением.PAS.
[F3] Открытие PAS-файла с текстом программы, ранее созданного на диске.
[Ctrl] + [F3] Вызов калькулятора стека.
[Alt] + [F3] Закрытие текущего окна (например, с текстом программы) в среде Turbo Pascal.
[Ctrl] + [F5] Перемещение или изменение размеров текущего окна в среде Turbo Pascal.
[Alt] + [F5] Просмотр результатов выполнения программы (вызов "экрана пользователя").
[F6] Смена текущего окна на следующее (например, при открытии одновременно файлов нескольких программ - переход от одной программы к другой).
[Alt] + [F9] Компиляция текущей программы (текста PAS-файла в текущем окне).
[Ctrl] + [F9] Компиляция и запуск текущей программы.
[Alt] + [X] выход из среды Turbo Pascal в Windows/DOS (после окончания работы в среде).

Графика среды Turbo Pascal

Создание двумерных графических объектов в среде Turbo Pascal возможно при вызове специального графического режима. При этом текстовая информация, которая до подключения графики находилась на "экране пользователя", удаляется графической канвой. Максимальные размеры канвы (холста) для рисования в среде Turbo Pascal составляют 640×480 точек экрана (по горизонтальной оси - 640 точек, по вертикальной оси - 480 точек). Причём, начало координат располагается в верхнем левом углу экрана, а вертикальная ось направлена вниз (см. рисунок).

Все графические изображения строятся в этом прямоугольнике, а координаты точек на холсте - натуральные числа: 0 <= x <= 640, 0 <= y <= 480. По умолчанию цвет графического экрана чёрный, но его можно менять. Также следует заметить, что основным режимом работы среды Turbo Pascal является текстовый режим. Поэтому для поддержания графического режима и возможности просмотра графических объектов в программе необходимо принять соответствующие меры. Например, в конце программы перед закрытием графического режима вставить процедуру READLN; без аргумента, которая будет ожидать от пользователя нажатие клавиши [Enter] для смены режима.
Для работы с графикой в среде Turbo Pascal необходимо наличие графической библиотеки (файла EGAVGA.BGI) и графического модуля (файл GRAPH.TPU). Правила обращения к этим файлам и примеры использования графических команд рассмотрены ниже в тексте конкретной программы.

program grafik;
uses graph;- подключаем графический модуль (файл graph.tpu)
var gd, gm, a, b, n, с: integer; – объявляем целые переменные
x1, y1, x2, y2: integer; – объявляем целые переменные
x,y,h: real; – объявляем действительные переменные
begin
gd:=detect; - определяем вид графического адаптера (SVGA 640x480, 16 цветов)
InitGraph (gd,gm, ' C:\TP7\BIN '); - инициализация графики (файл egavga.bgi)
SetGraphMode (n); - установить режим работы графического адаптера.
{n=0, 640x400 - изображение искажено
n=1, 640x350 - изображение сжато
n=2, 640x480 – нормальное изображение }
c:=15;
SetBkColor (c); - устанавливаем цвет фона экрана
c:=1;
SetColor (c); - устанавливаем цвет линий и точек при рисовании

с цвет   с цвет
  темно-синий     синий яркий
  тёмно-зеленый     светло-зелёный
  серо-голубой     небесно-голубой
  коричневый     красный (алый)
  фиолетовый     сиреневый
  оранжевый     желтый
  светло-серый     белый
  темно-серый     цвет фона / черный

PutPixel (x1,y1,c); – рисуем точку с координатами x1,y1 цветом с;
SetLineStyle
(a, 0, b); – устанавливаем стиль а и толщину b линии.
{Здесь a может быть 0, 1, 2, 3, b может быть 1 или 3}

a=0 a=1 a=2 a=3

Line (x1, y1, x2, y2); – рисуем линию от точки x1, y1 до точки x2, y2
MoveTo (x1, y1); - устанавливаем курсор в точку x1, y1 на графическом экране
LineTo (x1, y1); - рисуем линию от текущего положения курсора до точки x1, y1
Rectangle (x1,y2,x2,y2); - рисуем прямоугольник с диагональю x1,y1-x2,y2
Circle (x1,y1,a); - рисуем окружность с центром в точке x1,y1 и радиусом a
Ellipse (x1, y1, a1, a2, Rx, Ry); - рисуем дугу эллипса с центром в точке x1,y1, от центрального угла a1 до угла a2 в градусах (от 0 до 2p), с полуосями Rx, Ry
OutText (‘string’); – в текущем положении курсора выводим текст “string”
OutTextXY (x1,y1,‘text’); - в точке x1,y1 графического экрана выводим текст “text”
SetFillStyle (a, c); - устанавливаем стиль a (от 1 до 12) и цвет с (от 0 до 15) заливки объектов

а=1 a=7
a=2 a=8
a=3 a=9
a=4 a=10
a=5 a=11
a=6 a=12


Box (x1,y2,x2,y2); - рисуем залитый прямоугольник с диагональю x1,y1-x2,y2
FillEllipse (x1, y1, Rx, Ry);- рисуем залитый эллипс с центром в точке x1,y1 и полуосями Rx, Ry
FloodFill (x1, y1, c); - заливаем замкнутую фигуру, начиная с точки (x1, y1), цвет границ которой c
ClearDevice; - очистим графический экран (залить все цветом фона)
ReadLn; - ждем нажатия клавиши Enter (задержка картинки на экране)
CloseGraph; - отключаем графику (перейти в текстовый режим)
end. - конец программы

Пример готовой программы с комментариями

Program grafika_Tp;
uses graph; {подключаем графический модуль. Как правило, им заведут файл graph.tpu в Turbo Pascal'e и Borland Pascal'e}
var gd,gm: integer; {Две эти графические переменные целого типа понадобятся в дальнейшем для инициализации графики}
x1,y1,x2,y2: integer; {целые координаты на графическом экране}
x,y: real; {действительные переменные в какой либо программе, которые, например, затем нужно проиллюстрировать графически}
S: string;
BEGIN {начало программы}
gd:=detect; {автоопределение типа графического адаптера, т.е. EGA (старый тип) или VGA (он же SVGA или Vesa - новый тип)}
INITGRAPH(gd,gm,'BGI');
setgraphmode(2);
Setbkcolor(15); {Процедура устанавливает цвет фона. Её аргумент - номер цвета. В данном случае 15=белый.}
Setcolor(8);
Line(10,20,600,100);
MoveTo(200,300);
LineTo(300,200);
SetLineStyle(2,0,3);
LineTo(100,100);
x1:=320; y1:=240; {Координаты центра экрана}
putpixel(x1,y1,12); {Процедура рисует точку с координатами x1, y1 цвета 12=красный}
putpixel(x1+2,y1,1); {А рядом рисуем точку синего цвета 1=синий. Эти точки очень маленькие, но их можно рассмотреть}
SetLineStyle(0,0,1);Setcolor(2);
Ellipse(x1,y1,10,90,100,200);
Ellipse(x1,y1,0,360,150,150);
x1:=150;y1:=10;x2:=310;y2:=220;
Rectangle(x1, y1, x2, y2);
Str(x1/9,S);
S:='x1/9='+S;
OutTextXY(100,400,S);
SetLineStyle(0,0,3);Setcolor(12);
x:=-3*Pi; {Начало отрезка}
MoveTo(Round(x*30+300),Round(480-sin(x)*30-100));
while x<=3*Pi do begin {Пока не достигнут конец отрезка - выполняй}
y:=sin(x);
x1:=Round(x*30+300); y1:=Round(480-y*30-100);
LineTo(x1,y1);
x:=x+0.1;
end;
readln;
closegraph;
end.

Результат выполнения программы:

 


Поделиться с друзьями:

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.