Фаронов В.В. Ф24 Турбо Паскаль (в 3-х книгах). Книга 2. Библиотека Turbo Vision.-M.: Учебно-инженерный центр «МВТУ-ФЕСТО ДИДАКТИК», 1993, 429с., ил. ISBN 5-85896-003-0 Книга содержит исчерпывающее руководство по программированию в диалоговой среде Turbo Vision, представляющей собой объектно-ориентированную библиотеку системы программирования Турбо Паскаль версии 6.0. В первой главе на практически интересном примере дается описание основных приемов использования диалоговой среды. В остальных главах и приложениях детально описываются все стандартные модули Turbo Vision. Изложение иллюстрируется многочисленными примерами. Для инженеров, научных сотрудников, студентов и аспирантов. ОТ АВТОРА
Эта книга рассчитана на широкий круг пользователей одной из наиболее популярных в мире систем программирования - системы Турбо Паскаль, разработанной фирмой Borland International Inc. (США). В ней не содержится описания языка или среды Турбо Паскаля: предполагается, что Вы, уважаемый читатель, знакомы с этой системой по другим источникам, например по предыдущей книге серии «Турбо Паскаль» [8 ]. Более того, непременным условием практической реализации описанных в книге приемов программирования является наличие на Вашем персональном компьютере (ПК) системы Турбо Паскаль новейшей на сегодня (май 1992 г.) версии 6.0.
В книге содержится описание объектно-ориентированной библиотеки Turbo Vision , рассчитанной на создание разнообразных диалоговых программ. Каждый, кто разрабатывал относительно сложную диалоговую программу, такую как система автоматизированного проектирования или система управления базой данных, думаю, согласятся с моей оценкой: до 70 и более процентов такого рода программ приходится на реализацию удобного для пользователя способа работы с ними (интерфейса пользователя). Система Turbo Vision призвана резко сократить трудоемкость разработки интерфейсной «асти программ. Она предоставляет программисту все необходимые средства для реализации современного пользовательского интерфейса, включая перекрывающиеся и изменяющие свои размеры и положение на экране окна, системы последовательно разворачивающихся («выпадающих») меню, командные клавиши, использование мыши и т.п. Достаточно сказать, что диалоговая среда самой системы программирования Турбо Паскаль версии 6.0 полностью.реализована средствами Turbo Vision. Для тех, кто работал с этой средой, комментарин излишни, для остальных сообщу, что многочисленные эксперты при сравнении различных диалоговых систем программирования неизменно присуждают среде Турбо Паскаль высочайшие оценки.
Библиотека Turbo Vision стоит особняком среди других стандартных библиотек Турбо Паскаля. В ней впервые в полной мере использованы мощные возможности новейшей технологии программирования, известной как объектно-ориентированное программирование (ООП). Эта технология появилась сравнительно недавно и завоевала быструю популярность. Фирма Borland со своими объектно-ориентированными системами программирования Турбо Паскаль и Турбо Си++ является безусловным лидером среди фирм-разработчиков программного обеспечения.
В основе ООП лежат две руководящих идеи: идея объединения (инкапсуляции) в единое целое - объект - данных с обрабатывающими эти данные подпрограммами и идея наследования свойств объекта в его (объекта) потомках. Последовательная реализация этих идей приводит к возникновению принципиально нового подхода к программированию, сочетающего в себе достоинства таких противоположных методов, как нисходящее и восходящее программирование [5 ].
В книге содержится исчерпывающее руководство по программированию в среде Turbo Vision. В первой главе на примере создания ' несложной информационно-поисковой системы Вы познакомитесь с основными свойствами Turbo Vision. В остальных главах и приложениях описываются многочисленные объекты этой библиотеки и способы их использования.
Для практической реализации содержащихся в книге примеров Вам потребуется IBM -совместимый персональный компьютер с установленной на нем системой программирования Турбо Паскаль версии 6.0. В случае стандартной конфигурации модули Turbo Vision располагаются в каталогах \TP\TVISION и \TP\TVDEMOS - перед компиляцией программ эти каталоги следует указать в опции OPTIONS/DIRECTORIES/UNIT DIRECTORIES среды Турбо Паскаль.
13 мая 1992 г., г.Москва


Оглавление
ОТ АВТОРА..................................13
Глава 1. ВВЕДЕНИЕ В TURBO VISION ..........15
1.1. ПРОСТЕЙШАЯ ПРОГРАММА В
TURBO VISION.........................15
1.2. ФОРМИРОВАНИЕ СТРОКИ СТАТУСА ... 17
1.3. ФОРМИРОВАНИЕ МЕНЮ...............21
1.4. КОМАНДЫ............................24
1.5. СОБЫТИЯ И ИХ ОБРАБОТКА...........26
1.6. ПРОГРАММИРОВАНИЕ ДИАЛОГОВЫХ ЗАПРОСОВ ............................29
1.7. ИНКАПСУЛЯЦИЯ НОВЫХ ПОЛЕЙ И МЕТОДОВ .............................33
1.8. СОЗДАНИЕ И ИСПОЛЬЗОВАНИЕ ГРУПП 36
1.9. ВЫВОД ИЗОБРАЖЕНИЙ (ТЕКСТА) .....40
1.10. ЦВЕТОВАЯ ПАЛИТРА.................42
1.11. ИСПОЛЬЗОВАНИЕ КОЛЛЕКЦИЙ ......46
1.12. УКАЗАТЕЛЬ НА ЭЛЕМЕНТ СПИСКА ... 49
1.13. ДИАЛОГОВОЕ ОКНО ВЫБОРА РЕЖИМА 52
1.14. ОБРАБОТКА КОМАНД ПОЛЬЗОВАТЕЛЯ 58
1.15. РЕДАКТИРОВАНИЕ И ДОБАВЛЕНИЕ ЗАПИСЕЙ .............................59
1.16. УДАЛЕНИЕ ЗАПИСИ..................63
1.17. РЕЖИМ ПОИСКА ЗАПИСИ............64
1.18. ИТОГИ...............................66
Глава 2. ОБЩАЯ ХАРАКТЕРИСТИКА ОБЪЕКТОВ 68
2.1. СТРУКТУРА ОБЪЕКТОВ ...............69
2.2. АБСТРАКТНЫЕ ОБЪЕКТЫ И МЕТОДЫ . 70
2.3. ФУНКЦИОНАЛЬНОСТЬ ОБЪЕКТОВ -----71
2.4. ОБЗОР ВИДИМЫХ ЭЛЕМЕНТОВ ........72
2.4.1. Группы 'видимых элементов........72
Абстрактная группа..................72
Панель экрана ...................... 72
Программы .........................73
Окна...............................74
Диалоговые окна ....................74
2.4.2. Терминальные видимые объекты .... 74
Рамки ..............................74
Кнопки ............................74
Кластеры ...........................75
Меню ..............................76
Строки ввода........................76
Протокол ввода......................76
Скользящие окна (скроллеры).........77
Просмотр списков ...................77
Текстовые устройства................77
Статический текст...................78
Строки статуса......................78
2.5. НЕВИДИМЫЕ ЭЛЕМЕНТЫ .............78
Потоки .............................78
Потоки DOS .... . ...»79
Буферизованные потоки..............79
Потоки EMS ........................79
Ресурсы ............................80
Коллекции .........................80
Отсортированные коллекции..........80
Коллекции строк ....................81
Коллекции ресурсов .................81
Списки строк .......................81
'лава 3. ВИДИМЫЕ ЭЛЕМЕНТЫ...............82
3.1. ТЕРРИТОРИАЛЬНОСТЬ................82
3.2. ВЫВОД ИЗОБРАЖЕНИЯ ...............85
3.2.1. Заполнение области...............85
3.2.2. Цвет изображения................86
3.3. ГРУППЫ..............................90
3.3.1. Создание группы и изменение
ее состава...............................91
3.3.2. Z-упорядочение и дерево видимых элементов ...............................93
3.3.3. Активные элементы...............95
3.4. МОДАЛЬНЫЕ ВИДИМЫЕ ЭЛЕМЕНТЫ ... 96
3.5. ИЗМЕНЕНИЕ СВОЙСТВ ЭЛЕМЕНТА ___97
3.5.1. Поле Options.....................97
3.5.2. Поле GrowMode ..................100
3.5.3. Поле DragMode...................102
3.5.4. Поле State .......................103
3.5.5. Воздействие на состояние поля State . 105 ива 4. СОБЫТИЯ ...........................107
4.1. ПРИРОДА СОБЫТИЙ ..................107
4.2. ВИДЫ СОБЫТИЙ......................108
4.2.1. События от мыши.................109
4.2.2. События от клавиатуры............109
4.2.3. Сообщения ......................110
4.2.4. Пустые события ..................110
4.3. МАРШРУТИЗАЦИЯ СОБЫТИЙ.........ПО
4.3.1. Позиционированные события.......112
4.3.2. Активные события................112
4.3.3. Общие события...................113
4.4. ФАЗА СОБЫТИЙ ......................113
4.5. КОМАНДЫ............................115
4.5.1. Преобразование активных событий
в команды ..............................116
4.5.2. Запрещение и разрешение команд ... 119
4.6. МОДИФИКАЦИЯ И ОБРАБОТКА СОБЫТИЙ .............................119
4.6.1. События, определенные пользователем 119
4.6.2. Маскирование и очистка событий . . . 121
4.6.3. Перекрытие HandleEvent ..........121
4.6.4. Перекрытие GetEvent .............122
4.6.5. Неиспользованное время ..........123
4.6.6. Ненужные события ...............124
4.7. ВЗАИМОДЕЙСТВИЕ ВИДИМЫХ ЭЛЕМЕНТОВ ..........................125
4.8. КОНТЕКСТНАЯ ПОМОЩЬ .............127
IWa 5. КОЛЛЕКЦИИ.........................130
УI ЭЛЕМЕНТЫ КОЛЛЕКЦИЙ..............130
5.2. СОЗДАНИЕ КОЛЛЕКЦИЙ ..............131
5.3. ДОСТУП К ЭЛЕМЕНТАМ КОЛЛЕКЦИЙ . . 134
5.4. ОТСОРТИРОВАННЫЕ КОЛЛЕКЦИИ___138
5.5. КОЛЛЕКЦИИ СТРОК ..................142
5.6. ПОЛИМОРФНЫЕ КОЛЛЕКЦИИ.........145
5.7. КОЛЛЕКЦИИ И УПРАВЛЕНИЕ ПАМЯТЬЮ 149 Глава 6. ПОТОКИ.............................152
6.1. СУЩНОСТЬ ПОТОКОВ.................152
6.2. РЕГИСТРАЦИЯ ОБЪЕКТОВ ............154
6.3. СОЗДАНИЕ И УДАЛЕНИЕ ПОТОКА.....156
6.4. РАБОТА С ПОТОКОМ..................158
6.4.1. Методы Put и Get .................159
6.4.2. Методы Store и Load...............160
6.4.3. Обработка ошибок................161
6.4.4. Прямой доступ к потокам..........162
6.4.5. Использование потоков
с произвольными данными ................162
Глава 7. РЕСУРСЫ............................164
7.1. СОЗДАНИЕ РЕСУРСА..................165
7.2. ИСПОЛЬЗОВАНИЕ РЕСУРСА...........166
7.3. СТРОКОВЫЕ РЕСУРСЫ................167*
Глава 8. ПРАКТИКА ПРОГРАММИРОВАНИЯ___170
8.1. КОНТРОЛЬ ЗА ДИНАМИЧЕСКОЙ ПАМЯТЬЮ ............................170
8.2. ОБРАБОТКА ОШИБОК ИНИЦИАЦИИ
И МОДАЛЬНЫХ СОСТОЯНИИ ..........173
8.3. ОТЛАДКА ПРОГРАММ .................174
8.4. ИСПОЛЬЗОВАНИЕ ОВЕРЛЕЯ...........178
8.5. ПОРЯДОК ВЫЗОВА НАСЛЕДУЕМОГО МЕТОДА ..............................180
8.5.1. Конструктор.....................181
8.5.2. Деструктор ......................183
8.5.3. Другие методы ...................183
8.6. ПРИМЕРЫ ПРОГРАММНЫХ РЕАЛИЗАЦИЙ .........................184
8.6.1. Строка статуса...................185
8.6.2. Меню...........................186
8.6.3. Диалоговое окно..................189
8.6.4. Окно с текстом ...................193
8.6.5. Окно со скроллером...............197
8.6.6. Просмотр списка файлов...........200
ПРИЛОЖЕНИЯ ..............................203
Приложение Ш. СПРАВОЧНИК ПО TURBO VISION 203
П1.1. СПРАВОЧНИК ПО МОДУЛЯМ.........205
П1.1.1. Objects ........................205
Типы ..............................205
Константы ..........................206
Hosted by uCoz