|
Простейшая программа в Turbo Vision
Работа большинства прикладных
программ проходит в три этапа: подготовка к работе,
собственно работа и, наконец, ее завершение. В нашем
случае к подготовительному этапу можно отнести такие
действия, как анализ существования файла данных и его
(файла) подготовка к работе. На этапе завершения мы
должны обеспечить необходимые действия по сохранению
файла/Все остальные действия относятся к среднему этапу.
С учетом этого можно написать следующую простейшую программу:
begin
{Подготовить работу программы}
{Выполнить необходимые действия}
{Завершить исполнение программы}
end.
Если Вы попытаетесь выполнить эту программу,
ничего не произойдет - ведь мы еще никак не конкретизировали
необходимые действия. Так обстоит дело в Турбо Паскале,
но не так - в Turbo Vision! Для любой прикладной программы
Turbo Vision сразу же создает некоторую минимальную
программную реализацию, которую Вы можете затем постепенно
наращивать в ходе детализации программы. Вот начальный
вариант программы с использованием Turbo Vision:
Uses Арр; {Используется модуль АРР библиотеки
Turbo Vision}
var
Notebook: TApplication;
begin
Notebook.Init; {Подготовить работу программы}
Notebook.Run; {Выполнить необходимые
действия}
Notebook.Done {Завершить исполнение
программы}
end.
В этой программе объявляется использование
стандартного для Turbo Vision модуля Арр (от application
- приложение, прикладная программа). Такое объявление
открывает доступ прикладной программе к мощным возможностям
Turbo Vision. Чтобы использовать эти возможности, мы
объявили переменную Notebook (notebook - записная книжка)
типа TApplication. Как Вы вскоре заметите, на букву
Т в Turbo Vision начинаются идентификаторы объектов.
Таким образом, Notebook - это экземпляр объекта TApplication,
т.е. объединение данных (полей) и методов обработки
этих данных (процедур, функций, конструкторов, деструкторов).
В объекте TApplication предусмотрены методы Init, Run
и Done. Вызов этих методов и составляет исполняемую
часть нашей программы. Если Вы подготовите и запустите
программу, на экране ПК появится изображение, показанное
на рис. 15.1.

Рис.15.1. Вид
экрана для простейшей программы
Для выхода из программы необходимо,
как это следует из надписи в левом нижнем углу экрана,
нажать Alt-X или подвести к этой надписи указатель мыши
(если, разумеется, Ваш ПК оснащен этим устройством)
и нажать ее левую кнопку.
Как видите, даже простейшая программа
«знает», как создать экран, распознает команду Alt-X
и может работать с мышью. Совсем не плохо для трех исполняемых
операторов, не так ли? Такие возможности доступны потому,
что в объекте TApplication предусмотрены соответствующие
методы. В этом смысле использование объектов напоминает
использование подпрограмм из библиотек. Однако в отличие
от подпрограммы любой объект имеет все необходимые ему
данные. Говоря об объектах, я часто буду использовать
такие слова, как «знает», «умеет», «может», подчеркивая
тем самым главную отличительную особенность объектов
от традиционных подпрограмм - их «разумность»: последовательное
проведение в жизнь принципа инкапсуляции (объединения)
данных и всех необходимых для их обработки методов придает
объекту определенную независимость от
других элементов программы; объекты как бы «живут» в
программе своей независимой жизнью.
Простейшая программа не может выполнять
никаких других действий, кроме уже перечисленных, так
как именно эти действия запрограммированы в методах
Init и Run объекта TApplication. В ходе их выполнения
на экране создается изображение, имеющее три зоны: верхняя
строка, нижняя строка и вся остальная часть экрана.
Верхняя строка обычно используется для размещения опций
главного меню (не забывайте, что Turbo Vision - это
оболочка для диалоговых программ!). Нижняя строка -
строка статуса: в ней указываются так называемые командные
клавиши, т.е. клавиши или комбинации клавиш, которые
вызывают нужные действия без перехода к промежуточному
диалогу. Вся остальная часть экрана составляет «рабочий
стол» программы - сюда будут помещаться сообщения, здесь
будут размещаться окна, «выпадающие» меню (меню нижнего
уровня) и т.п.
|