
- •Часть 1. Введение в turbo vision...............................14
- •Глава 1. Наследование велосипеда...............................14
- •Глава 2. Разработка прикладных программ с использованием
- •Часть 2. Глава 3. Иерархия классов..........................88
- •Глава 4. Отображаемые элементы................................108
- •Глава 5. Программирование, управляемое событиями..............143
- •Глава 6. Разработка надежных программ.........................170
- •Глава 7. Коллекции............................................177
- •Глава 8. Объекты, хранимые с потоками.........................199
- •Глава 9. Ресурсы..............................................211
- •Часть 1. Введение в turbo vision
- •Глава 1. Наследование велосипеда
- •Глава 2. Разработка прикладных программ
- •Часть 2. Глава 3. Иерархия классов
- •Глава 4. Отображаемые элементы
- •Глава 5. Программирование, управляемое событиями
- •Глава 6. Разработка надежных программ
- •Глава 7. Коллекции
- •Глава 8. Объекты, хранимые с потоками
- •Глава 9. Ресурсы
- •Глава 10. Дополнительная информация....................................5
- •Часть 3. Справочник по turbo vision...................................13
- •Глава 11. Как использовать справочник.................................13
- •Глава 12. Заголовочные файлы turbo vision.............................16
- •Глава 13. Справочник по классам.......................................35
- •Глава 10. Дополнительная информация
- •Часть 3. Справочник по turbo vision
- •Глава 11. Как использовать справочник
- •Глава 12 описывает различные заголовочные файлы Turbo
- •Глава 16 описывает в алфавитном порядке все глобальные конс-
- •Глава 12. Заголовочные файлы turbo vision
- •Глава 13. Справочник по классам
- •Глава 14. Классы редактора......................................6
- •Глава 15. Стандартные диалоговые окна..........................41
- •Глава 16. Глобальный справочник................................70
- •Глава 14. Классы редактора
- •Глава 15. Стандартные диалоговые окна
- •Глава 16. Глобальный справочник
Глава 6. Разработка надежных программ.........................170
Программирование по принципу "все или ничего".................170
Резервная область памяти......................................170
Старый, трудоемкий способ распределения памяти................171
Новый, более простой способ распределения памяти..............172
Метод validView...............................................173
Удаление и уничтожение объектов...............................173
Turbo Vision для С++ = 5 =
Ошибки, не связанные с распределением памяти..................173
Сообщения об ошибках..........................................175
Основные потребители..........................................175
Глава 7. Коллекции............................................177
Тип TCollection...............................................179
Динамическое определение размера коллекций....................179
Смешивание типов полей в коллекциях...........................181
Создание коллекции............................................181
Методы итерации...............................................184
Итератор forEach..............................................184
Итераторы lastThat и firstThat................................185
Отсортированные коллекции.....................................188
Строковые коллекции...........................................190
Еще раз об итераторах.........................................191
Поиск элемента................................................192
Полиморфные коллекции.........................................193
Коллекции и управление памятью................................197
Доступная динамическая область памяти.........................197
Глава 8. Объекты, хранимые с потоками.........................199
Переопределенные операции << и >>.............................201
Знакомство с обработчиком потоков.............................203
Конструкторы классов, взаимодействующих с потоками............205
Имена классов, взаимодействующих с потоками...................206
Использование обработчика потоков.............................207
Компоновка кода с обработчиком потока.........................207
Создание и использование объектов потока......................207
Коллекции в потоках...........................................209
Добавление функции write......................................209
Сохранение и восстановление рабочей области...................210
Глава 9. Ресурсы..............................................211
Почему надо использовать ресурсы?.............................212
Как устроены ресурсы?.........................................213
Создание ресурсов.............................................215
Чтение ресурсов...............................................218
Списки строк..................................................220
Создание списков строк........................................221
Turbo Vision для С++ = 6 =
═══════════════════════════════════════════════════════════════════════
Авторский коллектив "*.*" и СП "Интерквадро"
╓───────── ──┐ ┐ Д Л Я
╚════╗ ══╛ ╓──── ║ │ ╓────────┐
║ │ ╓─┐ ╓─┐ ║ ╒═ ║ └─── ╓───── ║ ┌──╖
║ │ ║ │ ║ │ ║ └─╜─┤ ║ ╒══ ║ ╒══ ║ │ ╚ ╛
║ │ ║ └──╜ └ ║ ╒═╗ └┐ ║ └──╜ │ ║ └──╜ │ ║ │
╚══╛ ╚═════ ═╛ ╚═╛ ╚══╛ ╚══════╛ ╚══════╛ ║ │ ╓┐ ╓┐
РЕЗИДЕНТНАЯ ПРОГРАММА-СПРАВОЧНИК ║ ╓╜└ ╓╜└
╓──┐ ╓──┐ ПО РУКОВОДСТВУ "TURBO VISION ДЛЯ C++" ║ ╚╗┌┘╚╗┌┘
║ │ ╓╜ ╒╛ ║ ╚╛ ╚╛
║ │ ╓╜ ╒╛ ╓─┐ ╓─────┐ ╓─┐ ╓── ╓─┐ ║ │
║ │ ╓╜ ╒╛ ╓─┐ ══╛ ╓─┐ ╓───── ║ ╒╗ ╜ │ ║ │
║ │╓╜ ╒╛ ║ │ ╚═══╗ ║ │ ║ ╒══ ║ │╚╗ │ ║ │ ╓──┐
║ └╜ ╒╛ ║ │ ──╜ │ ║ │ ║ └──╜ │ ║ │ ╚╗ │ ║ └──╜ │
╚═════╛ ╚═╛ ╚═════╛ ╚═╛ ╚══════╛ ╚═╛ ╚═╛ ╚════════╛
г. Москва, 1991 г.
═══════════════════════════════════════════════════════════════════════
Turbo Vision для С++ = 7 =
ВВЕДЕНИЕ
-----------------------------------------------------------------
Если вы пишете программы, работающие в текстовом режиме, ко-
торые используют высокопроизводительный, гибкий и целостный ин-
терфейс для взаимодействия с пользователем, то библиотека Turbo
Vision предназначена для вас!
Библиотека Turbo Vision - является средством для разработки
прикладных программ, работающих в среде DOS, реализующим новый
взгляд на проектирование программного обеспечения. Библиотека мо-
жет быть использована для создания многофункционального интер-
фейса взаимодействия, включающего окна, диалоговые панели, меню,
поддержку манипулятора "мыши" и даже простой, настраиваемый,
удобный редактор.
В данной книге содержится полная информация о том, что может
Turbo Vision, что делает и почему. Потратив определенное время на
изучение основных принципов Turbo Vision, вы получите мощное
программное средство, которое даст вам большие преимущества в ра-
боте и позволит сэкономить массу времени. Разработка сложных неп-
ротиворечивых интерактивных программ займет значительно меньше
времени, чем вы могли предположить.
Почему Turbo Vision ?
-----------------------------------------------------------------
С Turbo Vision и объектно-ориентированным программированием
не придется изобретать велосипед - вы сможете унаследовать наш!
После создания фирмой Borland нескольких программ с целост-
ным многофункциональным пользовательским интерфейсом, мы решили
заключить их возможности в многократно используемый набор
средств. Библиотека Turbo Vision была разработана с использовани-
ем технологии объектно-ориентированного программирования.
Работает ли она? Еще бы! С помощью варианта Turbo Vision для
Turbo Pascal мы написали интегрированную среду разработки прог-
рамм на Turbo Pascal 6.0 за меньшее время, чем требуется для на-
писания такой среды с нуля. Сейчас вы можете использовать эти
инструменты для собственных программ.
Что такое Turbo Vision?
-----------------------------------------------------------------
Turbo Vision - является полной объектно-ориентированной биб-
лиотекой классов, которая содержит компоненты пользовательского
интерфейса:
- многочисленные, сворачивающиеся, перекрывающиеся окна;
Turbo Vision для С++ = 8 =
- вертикальные меню;
- поддержку "мыши";
- панели диалога;
- встроенную установку цвета;
- кнопки, полосы прокрутки, панели ввода, кнопки управления
с независимой и зависимой фиксацией;
- стандартную обработку нажатий клавиш и работы манипулято-
ром "мышь";
- и многое другое!
С использованием Turbo Vision все ваши программы приобретут
вполне художественный вид при небольшом усилии с вашей стороны.
Что вам нужно знать?
-----------------------------------------------------------------
Чтобы использовать Turbo Vision, нужно свободно владеть объ-
ектно-ориентированным программированием (ООП) и, в частности,
С++. В приложениях, написанных с использованием Turbo Vision, ши-
роко используется техника ООП, в том числе наследование и поли-
морфизм.
Turbo Vision для С++ = 9 =
Что содержится в этой книге?
-----------------------------------------------------------------
Так как библиотека Turbo Vision - новое средство, в котором
используются некоторые методы, возможно, незнакомые многим прог-
раммистам, то в книгу включен пояснительный материал и полное
справочное руководство.
- Часть 1 знакомит вас с основными принципами Turbo Vision и
предоставляет средства обучения для написания прикладных программ
Turbo Vision.
- Часть 2 содержит более детальную информацию по всем важным
элементам Turbo Vision, в том числе описание иерархии классов
Turbo Vision и предложения по написанию более совершенных прик-
ладных программ.
- Часть 3 представляет собой полное справочное руководство
по всем классам и другим элементам, в том числе и по заголовочным
файлам.
Установка Turbo Vision
-----------------------------------------------------------------
Библиотека Turbo Vision поставляется с программой установки
(инсталляции), которая называется INSTALL. Так как мы использова-
ли методы сжатия файлов, то вы должны воспользоваться данной
программой; вы не сможете просто скопировать файлы Turbo Vision
на свой жесткий диск. Программа INSTALL же - автоматически скопи-
рует и распакует файлы Turbo Vision. Файл README на установочном
диске содержит список дистрибутивных файлов.
Мы предполагаем, что вы уже знакомы с командами DOS. Напри-
мер, вам понадобится команда DISKCOPY, чтобы сделать копии ваших
дистрибутивных дисков. Сделайте полную рабочую копию дистрибутив-
ных дисков и, после этого, уберите оригинальные диски в безо-
пасное место.
Ни один из продуктов фирмы Borland не использует систему за-
щиты от копирования. Если вы не знакомы с Лицензионным соглашени-
ем фирмы Borland, прочитайте соглашение, входящего в комплект
поставки Turbo Vision. Не забудьте послать нам вашу заполненную
регистрационную карточку программного продукта; это гарантирует,
что вы одним из первых получите самые последние доработки и новые
версии Turbo Vision.
Использование INSTALL
-----------------------------------------------------------------
Перед инсталляцией мы советуем прочитать файл README.
Turbo Vision для С++ = 10 =
Помимо прочего, программа INSTALL определяет, какая аппара-
тура используется, и соответственно конфигурирует Turbo Vision.
Он также создает необходимые каталоги и копирует файлы с дистри-
бутивных дисков на жесткий диск. Эти действия сопровождаются объ-
яснениями; ниже приводится описание работы с программой INSTALL.
Для установки Turbo Vision:
1. Вставьте установочный диск (диск 1) в накопитель А (или в
любой другой подходящий накопитель. Наберите следующую команду,
после чего нажмите клавишу Enter:
a:install
2.Нажмите Enter на установочном экране.
3.Действуйте согласно подсказкам.
Файлы README И HELPME!.DOC
-----------------------------------------------------------------
ВАЖНО!
Когда процесс установки закончен, программа INSTALL предла-
гает прочесть важную, самую последнюю информацию о Turbo Vision,
содержащуюся в файле README. Также вы можете воспользоваться фай-
лом HELPME!.DOC, который отвечает на наиболее часто задаваемые
вопросы.
Для доступа к файлу README:
1. Если вы не установили Turbo Vision, то вставьте диск с
Turbo Vision в устройство А. Если вы установили Turbo Vision, то
пропустите указания до пункта 3 и начните с него.
2. Наберите А: и нажмите Enter.
3. Наберите readme и нажмите Enter. Как только содержание
файла появится на экране, для просмотра текста, используйте кла-
виши управления курсором "стрелка-вверх" и "стрелка-вниз".
4. Для выхода нажмите Esc.
После установки Turbo Vision, можете открыть README в окне
редактирования следующим образом:
1. Запустите Borland C++, набрав TС в командной строке. Наж-
мите клавишу Enter.
2. Нажмите F10. Выберите File/Open. Введите Readme и нажмите
Enter. Редактор Borland C++ откроет файл в окне редактирования.
Turbo Vision для С++ = 11 =
3. Когда вы прочитали файл README, вы можете выйти из
Borland C++ или продолжить работу.
Познакомиться с Turbo Vision можно также с помощью файла
HELPME!.DOC, который содержит ответы на наиболее распространенные
вопросы, задаваемые пользователями. Используйте этот файл, если
столкнетесь с какими-либо трудностями. Наберите в командной стро-
ке:
README HELPME!.DOC
Turbo Vision для С++ = 12 =
Метаязык и символы, используемые в этом руководстве
-----------------------------------------------------------------
Пропорциональный - этот вид шрифта представляет текст,
шрифт который появляется на экране или в
программе, а также все, что вы дол-
жны набирать в буквенном виде.
Большие буквы - имена констант или файлов.
[] - квадратные скобки в тексте или ко-
манде DOS заключают выбираемые эле-
менты, которые зависят от системы.
Курсив - текст не нужно писать словами.
Выделенный шрифт - имена функций, классов и структур,
встречающиеся в тексте (но не в
примерах программ). Также исполь-
зуется в тексте для резервирован-
ных слов (например, char, switch,
near и cdecl).
Наклонный шрифт - указывает имена переменных (иденти-
фикаторов), которые встречаются в
тексте. Он также представляет тер-
мины, которые можно использовать
как есть или придумать свои. Он
также применяется для выделения
определенных слов, например, новых
терминов.
Клавиши - обозначение клавиш на клавиатуре.
Например, "Нажмите Esc для выхода
из меню".
Turbo Vision для С++ = 13 =
Как связаться с фирмой Borland
-----------------------------------------------------------------
Borland предлагает разнообразный сервис, чтобы ответить на
вопросы о продукте. Не забудьте послать регистрационную карточку;
зарегистрированные пользователи обеспечиваются технической под-
держкой, и им высылается информация об усовершенствованиях и про-
дуктах для сопровождения.
Ресурсы помощи в вашем пакете
-----------------------------------------------------------------
Этот продукт содержит много вариантов помощи, для нахождения
решения:
- руководство обеспечивает информацию по каждому аспекту ва-
шей программы. Используйте его как основной источник информации.
- ответы на многие общие вопросы содержатся в файлах README
и HELPME!.DOC; смотрите предыдущие разделы для более полной ин-
формации об этих файлах.
Turbo Vision для С++ = 14 =