ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ ................................................
ОТОБРАЖАЕМЫЕ ОБЪЕКТЫ ....................................
Объект tView ........................................
Группа (tGroup).Z - порядок .........................
Оформление программы, использующей средства Turbo
Vision.Объекты tProgram и tApplication ..............
Обработка событий ...................................
Команды .............................................
ПОРЯДОК РАБОТЫ С ОТОБРАЖАЕМЫМИ ОБЪЕКТАМИ ................
Описание отображаемого объекта ......................
Создание отображаемого объекта ......................
Помещение отображаемого объекта в группу ............
Задание параметров отображаемому объекту ............
Работа с модальными объектами .......................
СОЗДАНИЕ МЕНЮ ...........................................
Создание разворачивающегося меню ....................
Создание локального меню ............................
СОЗДАНИЕ ОКОН И ДИАЛОГОВЫХ ОКОН .........................
Окна в Turbo Vision .................................
Элементы окон в Turbo Vision ........................
Поле скроллинга .....................................
Текстовый элемент буферированной информации .........
Текстовый элемент для пассивного терминала ..........
Линейка скроллинга ..................................
Диалоговое окно .....................................
Элементы диалоговых окон ............................
Строка ввода ........................................
Метка ...............................................
Протокол ............................................
Селективный и триггерный списки .....................
Кнопка ..............................................
Статический и параметрический тексты ................
Списки строк ........................................
Стандартные окна ....................................
СОЗДАНИЕ СТРОК СОСТОЯНИЯ ................................
Строка состояния, отображающая клавиши быстрого
управления ..........................................
ЦВЕТОВАЯ ПАЛИТРА TURBO VISION ...........................
Стандартная палитра .................................
Изменение стандартной палитры .......................
НЕОТОБРАЖАЕМЫЕ ОБЪЕКТЫ TURBO VISION .....................
Анализаторы вводимой информации .....................
Объект - коллекция ..................................
Потоки Turbo Vision .................................
Ресурсы .............................................
Списки строк ........................................
НЕКОТОРЫЕ ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ TURBO VISION .......
Текстовый редактор ..................................
Отображение древовидных структур ....................
Диалоговое окно задания цветной палитры .............
ЗАКЛЮЧЕНИЕ ..............................................
ВВЕДЕНИЕ
Для эффективной работы системы и ее большего покупательского
спроса недостаточно только того, чтобы аппаратура и программы обеспе-
чивали правильные результаты и быструю работу.Не менее важным фактором
является удобство работы пользователя.
Поэтому в настоящее время ни один программный продукт, лишенный
более или менее удобного интерфейса взаимодействия пользователя с
компьютером и программ между собой, не может рассчитывать на успех.
В мире разработано огромное количество различных систем поддержки
создания пользовательского интерфейса.Наиболее прогрессивными, по на-
шему мнению, являются объектноориентированная система Turbo Vision
фирмы Borland International и операционная система Windows фирмы
Microsoft.Рассмотрением возможностей ОС Windows занимался А.А.Галаш-
кин, а в представленной работе производится обзор и изучение особен-
ностей, возможностей, элементов, организации пакета Turbo Vision.
При создании прикладной программы программист большие усилия зат-
рачивает на организацию ввода/вывода информации, т.е. на формирование
интерфейса.Они соизмеримы с усилиями, затрачиваемыми на программирова-
ние основного алгоритма программы, по которому решается конкретная за-
дача.Работа, связанная с организацией ввода/вывода, повторяется от
программы к программе, требует выполнения однотипных операций, отвле-
кает внимание программиста от решения основной задачи.
Хорошим средством упрощения работы по организации ввода/вывода,
его унификации с учетом современных требований к интерфейсу программ
является разработанный фирмой Borland International пакет Turbo
Vision 2.0, представляющий объектно-ориентированную библиотеку средств
формирования пользовательского интерфейса.
Программу можно представить как совокуп-
ность двух частей : часть программы, обеспечивающая решение основной
задачи, и часть, обеспечивающая организацию ввода/вывода информации с
внешних устройств (на внешние устройства), - так называемый интерфейс
программы.В основную часть (из основной части) программы информация
может передаваться двумя способами - непосредственная передача инфор-
мации (например, программа формирует какие-то данные и размещает их в
конкретном файле на магнитном диске) и передача информации с помощью
организации диалога (например, после формирования тех же данных проис-
ходит уточнение, в какой конкретно файл следует поместить сформирован-
ную информацию).Способ, основанный на организации диалога, является
более универсальным и именно для организации диалога предназначен в
первую очередь пакет Turbo Vision.
В современных программах, работающих в текстовом режиме, диалог
обычно организуется с помощью трех средств : меню, диалоговых окон и
строк состояния.Turbo Vision позволяет реализовать все эти средства
диалога.
Turbo Vision представляет собой библиотеку объектов, позволяющих
создать пользовательский интерфейс и широко использующих свойства ин-
капсуляции, наследования и полиформизма.Почти все объекты библиотеки
являются потомками общего абстрактного объекта tObject.Мы рассмотрим
их классификацию, исходя из задач, возникающих при создании интерфейса.
Объект tObject достаточно прост.Он не имеет параметров и обладает
тремя методами, два из которых - конструктор Init :
constructor tObject.Init;
заполняющий выделенную под объект область нулями, и деструктор Done :
destructor tObject.Done;
не выполняющий никаких действий, - должны быть переопределены в его
потомках, а третий метод Free :
procedure tObject.Free;
удаляющий объект из динамической памяти, никогда не переопределяется,
т.к. может удалить любой потомок объекта tObject.
При организации интерфейса приходиться решать две задачи : созда-
ние соответствующего образа на экране и возможность посредством того
образа передачи информации как от пользователя к вычислительной маши-
не, так и от машины к пользователю.Помимо этих двух задач при организа-
ции интерфейса приходиться выполнять различные вспомогательные опера-
ции (вычисления, контроль и преобразование данных, хранение информации
и т.д.).В связи с этим все объекты Turbo Vision можно разбить на две
группы : отображаемые и неотображаемые объекты.
ОТОБРАЖАЕМЫЕ ОБЪЕКТЫ
Отображаемыми объектами являются такие объекты, которые могут
быть изображены на экране.Эти объекты позволяют наглядно представить
пользователю информацию, дать ему средства ввода информации в програм-
му наиболее естественным образом.К таким объектам относятся,в частнос-
ти, меню, строки состояния, диалоговые окна с их компонентами.
Любой отображаемый объект является потомком общего абстрактного
объекта tView, который является непосредственным потомком общего предка
tObject.
Неотображаемыми объектами являются объекты, которые не могут быть
изображены на экране.К этой категории, в частности, относятся объекты,
предназначенные для контроля и хранения данных.Наиболее часто исполь-
зуемыми объектами такого класса являются анализаторы вводимой информа-
ции, коллекции, потоки и ресурсы.
Любой объект Turbo Vision имеет большое количество параметров,
определяющих его свойства и методов (подпрограмм), задающих его пове-
дение.Согласно принципам объектного программирования, желательно пара-
метры объектов не изменять непосредственно, а с помощью соответствую-
щих методов, предназначенных для этой цели.Это связано с тем, что в
ряде случаев только изменение того или иного параметра недостаточно -
следует выполнить дополнительно определенные действия (например, пере-
рисовать объект на экране).В ряде случаев непосредственное изменение
параметров просто недопустимо.Практически для всех параметров объектов
в Turbo Vision указано, допустимо ли его непосредственно изменять (за-
писывать).К сожалению, принцип объектного программирования, требующий
изменения параметров только с помощью того или иного метода, в полной
мере в Turbo Vision не реализован, и приходится в простейших случаях
параметры изменять непосредственно либо писать свои дополнительные ме-
тоды.
Любой отображаемый объект может быть размещен на кране в прямоу-
гольной области, которая задается координатами левого верхнего и пра-
вого нижнего углов.В Turbo Vision координаты задают линии раздела меж-
ду знакоместами, и при этом нумерация по горизонтали и вертикали начи-
нается с нуля (координаты 0,0 - левый верхний угол экрана).Координаты
могут быть абсолютными, отсчитываемыми относительно левого верхнего
угла крана, и относительными, отсчитываемыми от левого верхнего угла
соответствующего окна (так называемого владельца данного отображаемого
объекта).
Для задания координат точки на кране и координат прямоугольной
области используются два объекта - tPoint, содержащий две координаты
точки - X и Y :
type tPoint = object
X, Y : Integer;
end;
и tRect, определяющий левый верхний и правый нижний углы прямоугольной
области.Объект tRect не только содержит соответствующие координаты, но
также обладает методами, позволяющими задавать, изменять, получать эти
координаты и выполнять над ними ряд других операций.
Объект tView
Предком отображаемых объектов является объект tView.Несмотря на
то, что этот объект абстрактный, т.е. нельзя создать конкретный обра-
зец этого типа, он имеет важное значение, т.к. задает общие свойства
всех отображаемых элементов и определяет виртуальные методы, которые