<Иphp printf("

%s

",$h); И>

ВВЕДЕНИЕ.

Если Вы пишете программы, работающие в текстовом режи-

ме, которые используют высокопроизводительный, гибкий и це-

лостный интерфейс для взаимодействия с пользователем, то биб-

лиотека Turbo Vision предназначена для Вас.

Библиотека Turbo Vision является средством для разработ-

ки программ, работающих в среде DOS , реализующих новый

взгляд на проектирование программного обеспечения. Библиотека

может быть использована для создания многофункционального ин-

терфейса взаимодействия, включающего окна, диалоговые панели,

меню, поддержку манипулятора "мышь" и даже простой, настраи-

ваемый, удобный редактор.

После создания фирмой Borland нескольких программ с це-

лостным многофункциональным пользовательским интерфейсом, бы-

ла предпринята попытка заключить их возможности в многократно

используемый набор средств. Библиотека Turbo Vision была раз-

работана с использованием технологии объектно-ориентированно-

го программирования.

Turbo Vision является полной объектно-ориентированной

библиотекой классов, которая содержит компоненты пользовате-

льского интерфейса:

- многочисленные, сворачивающиеся, перекрывающиеся окна;

- поддержку "мыши";

- панели диалога;

- встроенную установку цвета;

- кнопки, полосы прокрутки, панели ввода, кнопки управле-

ния с независимой и зависимой фиксацией;

- стандартную обработку нажатий клавиш и работы манипуля-

тором "мышь";

- и многое другое!

Чтобы использовать Turbo Vision , нужно свободно владеть

объектно-ориентированим программированием (ООП) и, в частнос-

ти, С++. В приложениях, написаных с использованием TurboVisi-

on , широко используется техника ООП, в том числе наследова-

ние и полиморфизм.

ОСНОВНЫЕ ЭЛЕМЕНТЫ TURBO VISION.

Библиотека Turbo Vision представляет собой многооконную

оболочку, управляемую событиями. Она является программным

средством, содержащим только скелет программы (средства,

обеспечивающие основную структуру). С помощью свойства расши-

ряемости объектно-ориентированного программирования на языке

Turbo С++, можно наполнить этот скелет. Turbo Vision предс-

тавляет Вам класс прикладной программы, TApplication, а Вы

на его основе создайте собственный класс, например, - MyApp-

lication, для поддержки своей собственной прикладной програм-

мы. Затем Вы добавляете к нему, или заменяете в нем необходи-

мые детали, требубщиеся для решения конкретной задачи.

Подразумеваемые конструкторы и деструкторы берут на себя

все функции обслуживания: инициализацию объектов и их уничто-

жение.

При использовании Turbo Vision Вам никогда не придется

модифицировать имеющийся исходный текст. Изменения в Turbo

Vision производятся путем расширения. Класс прикладной прог-

раммы TApplication остается неизменяемым внутри библиотеки

TV.LIB. Вы будете делать только добавления к нему, создавая

новые типы классов и вносить нужные изменения путем замены

имеющихся функций на новые, которые Вы разработаете для новых

объектов.

Кроме того, Turbo Vision представляет собой иерархичес-

кую структуру, а не разобщенный набор отдельных средств. Его

можно использовать только целиком, а не по частям. Все компо-

ненты Turbo Vision архитектурно взаимосвязаны и все они взаи-

модействуют друг с другом множеством взаимосвязанными спосо-

бами. Не стоит пытаться вычленить из него, например, поддерж-

ку "мыши" - это сложне, чем создание новой системы поддержки

"мыши".

В основе философии разработки Turbo Vision лежат две

следующие рекомендации: полное использование объектно-ориен-

тированного техники и работа с комплексом библиотеки Turbo

Vision в ее основных понятиях. Это означает "игру по прави-

лам" Turbo Vision и использование ее составных типов объек-

тов так, как это в ней предусмотренно. Turbo Vision создавал-

ся для избавления пользователей от огромного объема ненужной

повторяющейся работы и предоставления проверенной основы для

разработки прикладных программ, которой можно доверять.

Элементы прикладной программы, построенной в Turbo Vision.

Прикладная программа, использующая Turbo Vision, предс-

тавляет собой взаимодействующее мнощество отбражаемых объек-

тов, событий и неотображаемых объектов.

В контексте Turbo Vision отображаемый объект - это то,

что Вы можете увидеть на экране. Поля, рамки, строкипрокрутки

и меню, - все это отображаемые объекты. Отображаемые объекты

могут объединяться и образовывать боллее сложные объекты, та-

кие как окна и панели диалога. Такие отображаемые объекты на-

зываются групповыми объектами, и функционируют вместе, как

единый отображаемый объект. Группы даже могут содержать в се-

бе другие группы, порождая цепочки отображаемых обьъектов и

подобъектов.

Событием является то, на что должна реагировать Ваша

программа. События поступают от клавиатуры, от "мыши" или из

других частей Turbo Vision . События помещаются в очередь,

затем обрабатываются в порыдке поступления обработчиком. Та-

кой обработчик имеется в классе TApplication, являющимся те-

лом Вашей прикладной прогоаммы.

Неотображаемыми называются любые объекты программы, не

являющиеся отображаемыми, т. е. непосредственно не взаимо-

действующие с экпаном. Они выполняют вычисления, осуществляют

связь с периферийными устройствами и в целом реализуют функ-

ции прикладной программы. Если неотображаемому объекту нужно

вывести какую-либо информацию на экран, то это делается с по-

мощью отбражаемого объекта. Эта концепция является очень важ-

ной для поддержания строгого порядка в прикладных программах

Turbo Vision : с экраном взаимодействут только отображаемые

объекты.

Общие подходы.

Поскольку Turbo Vision разработан для реализации стан-

дартизированного, рационального подхода к построению интер-

фейса, то Ваши прикладные программы обретут похощий вид.

Этот вид идентичен виду интерфейса различных интегрированных

сред фирмы Borland и базируется на многолетнем опыте и про-

верках их использования. Наличие общего и доступного для по-

нимания подхода к интерфейсу прикладной программы является

большим преимуществом для Вас и Ваших пользователей: несмот-

ря на любую сложность и "закрытость" задач Вашей программы,

способ работы с ней будет всегда Вам знаком и процесс работы

с ней легок и прост.

Рабочая область - это заштрихованный фон, на котором

отображаются объекты прикладной программы. Как и все элементы

Turbo Vision, рабочая область является объектом. Объектами

являются также линейное меню в верхней части экрана и строка

состояния в нижней части. Команды в строковом меню соответст-

вуют меню, которые "раскрываются" вниз (вертикальные меню) с

помощью "мыши" или нажатием соответствующих управляющих кла-

виш.

Связь программы с пользователями обычно осуществляется

через окно или несколько окон или панели диалога, которые

отбражаются в рабачей области на экране и исчезают в соот-

ветствии с командами от "мыши" или с клавиатуры. Turbo Visi-

on располагает большим ассртиментом алгоритмов работы с окна-

ми по вводу и отображению информации на экране. Внутренние

поля можно сделать прокручиваемыми, и тогда они будут слу-

жить "воротами" в более крупные изображения данных, такие

как файлы документов. Прокрутка окна по данным осуществляет-

ся перемещением бегунка строки-прокрутки в нижней части экра-

на, в его правой части или в обеих этих частях. Бегунок стро-

ки прокрутки указывает положение окна относительно совокуп-

ности изображаемых на экране данных.

Диалоговые окна часто содержат кнопки, которые реализо-

ваны как выделенные цветом слова, которые выбирают с помощью

"мыши" (или с помощью клавиш "табуляция" и "пробел"). В ответ

на нажатие, "кнопки" вдавливаются (как настоящие кнопки) и

могут реализовывать передачу команд прикладной программе.

При изучении Turbo Vision следует иметь в виду: суть

программировария с использованием Turbo Vision заключается в

разработке требуемого вида интерфейса и его обработки ко-

манд. Turbo Vision - "скелет" программы - позаботится о пере-

даче команд нужным частям Вашей программы. Вам же останется

лишь определить, что конкретно должно быть сделано после на-

жатия клавиши на клавиатуре, кнопки "мыши" или выбора коман-

ды меню. Таким образом "мясом" Вашей программы является та

ее часть, которая выполняет функциональную обработку принима-

емых от пользователей команд - и эта "мясная" часть содержит-

ся в создаваемых отображаемых объектах.

Структура программы.

Каким же образом реализуется выполнение программы? Как

правило, большая часть программы унаследуется из определенных

ранее объектов в Turbo Vision . Причем унаследуется настолько

значительная часть программы, что принципы ее реализации мо-

гут показаться таинственными. Пошаговое выполнение программы

с помощью интегрированого отладчика не дост полной картины,

т. к. Turbo Vision функционирует в виде оттранслированой биб-

лиотеки.

Т. к. программы, написанные с использованием Turbo Visi-

on , управляются событиями, их структура несколько отличает-

ся от обычных программ. Особенностью программ, управляемых

событиями, является отделение структур управления, которые

выполняют чтение и обработку входных данных, от процедур и

функций, которые воздействуют на эти входные данные.

Обычные программы, как правило, содержат много отдельных

программных блоков, каждый из которых предусматривает получе-

ние входных данных, затем определяет, какой части программы

они адресованы и выполняют вызов соответствующего фрагмента

для обработки этих данных, а затем повторяет все эти опера-

ции. Кроме того, фрагмент, завершающий обработку входных дан-

ных, должен получить информацию о месте передачи управления

для следующего этапа ввода.

Программы, управляемые событиями, наоборот, имеют цент-

рализованный механизм диспетчеризации событий. Таким образом,

большая часть программы не заботится о выборке входных данных

и, поэтому, их использование не будет составлять большой

проблемы. Это имеет большое значение для отладки программ,

т. к. Вы должны изменить всю стратегию отладки, устанавливая

контрольные точки в функциях обработки событий для проверки

диспетчеризации сообщений; в фрагментах программы, реагирую-

щих на происходящие события, чтобы проверить правильность их

функционирования.

Деструктор прикладной программы.

Когда программа завершается отображаемые объекты уничто-

жаются путем автоматических вызовов деструкторов базовых

классов в порядке, обратном тому, который использовался при

вызове конструкторов. Наконец, отключается обработчик ошибок

и драйверы Turbo Vision. В целом, от Вас не требуется специ-

ального завершения работы с объектами Turbo Vision.

Вместе с этим смотрят:

Virtual Reality Modeling Language
Windows NT - OC нового поколения
WINDOWS-средства для создания презентаций
WORD - мощный текстовый редактор