скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыРеферат: Turbo Vision

     Инициализируется параметрический текст методом Init:

     constructor tParamText.Init(var Bounds: tRect;

                       const AText: string; AParamCount: Integer);

где  Bounds - поле, выделенное под параметрический текст;

     AText - исходный текст со спецификациями параметров;

     AParamCount - число параметров текста.

                             Списки строк

     Списки строк в диалоговом окне напоминают поле скроллинга  и  его

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

списков.

     Список строк (тип tListViewer) является абстрактным объектом,  из

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

ретным списком информации (вертикальный и горизонтальный скроллинг).

     Непосредственным потомком списка строк является список  коллекции

строк (типа  ListBox),  предназначенный в первую очередь для просмотра

коллекции строк (только вертикальный скроллинг).

     Инициализируется список  коллекции  строк  с помощью конструктора

Init :

     constructor tListBox.Init(var Bounds: tRect;

                          ANumCols: Word; AScrollBar: pScrollBar);

     где  Bounds - поле, выделенное под список;

          ANumCols - число колонок, в которые выводятся строки;

          AScrollBar - указатель на линейку вертикального скроллинга.

                           Стандартные окна

     В Turbo Vision имеется большое количество стандартных окон, имею-

щих специальное  назначение.Рассмотрим  стандартные информационные ок-

на.Заголовок функции MessageBox имеет вид :

     function MessageBox(const Msg: string; Params:

                                  Pointer; AOptions: Word): Word;

где Msg - размещаемое в окне сообщение;

    Params - указатель на параметры сообщения;

    AOptions - флаги;

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

окна.

     Функция формирует окно размером 40*60, в котором помещается сооб-

щение Msg,  скорректированное параметрами, находящимися по адресу, оп-

ределяемому значением Params и набор кнопок,  определяемый  параметром

AOptions, который определяет также тип окна (его название).

                       СОЗДАНИЕ СТРОК СОСТОЯНИЯ

     Строка состояния не является необходимым атрибутом.Однако ее  ис-

пользование помогает пользователю проще работать с программой, так как

он может получить информацию о текущем состоянии программы  и клавишах

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

ее создание следует начинать непосредственно после создания меню прог-

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

мые меню и строкой состояния.

      Строка состояния, отображающая клавиши быстрого управления

     Каждый элемент строки состояния ,  содержащий информацию о  конк-

ретной клавише (их совокупности) быстрого управления,  имеет стандарт-

ный тип-запись tStatusItem :

     tStatusItem = record

        Next: pStatusItem;

        Text: pString;

        KeyCode: Word;

        Command: Word

     end;

где Next - указатель на следующий элемент строки состояния;

    Text - указатель на строку,  содержащую выводимый на  экран  текст

для данной клавиши быстрого управления;

    KeyCode - код клавиши быстрого управления, с помощью которой можно

выбрать данный элемент строки состояния;

    Command - код команды, которую следует выполнить при выборе данно-

го элемента строки состояния.

     Создать элемент  строки  состояния  можно  с  помощью стандартной

функции NewStatusKey :

     function NewStatusKey(const AText: string;

                            AKeyCode: Word; ACommand: Word; ANext:

                                        pStatusItem); pStatusItem;

где AText - выводимый на экран текст;

    AKeyCode - код клавиши быстрого управления;

    ACommand - код команды,  которую следует выполнить при выборе дан-

ного элемента;

    ANext - указатель на следующий элемент строки состояния;

    результат - указатель на созданный элемент строки состояния.

     Сама строка состояния имеет стандартный тип-запись tStatusDef :

     tStatusDef = recerd

        Next: pStatusDef;

        Min, Max: Word;

        Items: pStatusItem;

     end;

где Next - указатель на следующую строку состояния;

    Min, Max - миним.  и максим.  границы диапазона параметра контекс-

тной помощи, для которого отображается именно эта строка состояния;

    Items - указатель на первый элемент списка элементов.

     Элементы строки  состояния также как и строки состояния представ-

ляют собой линейный список.

     Для создания строки состояния можно  воспользоваться  стандартной

функцией NewStatusDef :

     function NewStatusDef(AMin, AMax: Word;

              AItems: pStatusItem; ANext: pStatusDef): pStatusDef;

где ANext - указатель на следующую строку состояния;

    AMin, AMax - миним. и максим. границы диапазона параметра контекс-

тной помощи, для которого отображается именно эта строка состояния;

    AItems - указатель на первый элемент списка элементов.

     В строке состояния также можно отразить  информацию  о  состоянии

программы в конкретный момент времени (процесс, протекающий в програм-

ме и т.д.)Информация такого вида зависит от  значения  параметра  кон-

текстной помощи активизированного в настоящий момент элемента програм-

мы.Вывести такую  информацию  можно  с  помощью  метода  Hint  объекта

tStatusLine :

     function tStatusLine(AHelpCtx : Word): string; virtual;

где AHelpCtx - значение параметра контекстной помощи;

    результат - строка символов, выводимая на экран.

                    ЦВЕТОВАЯ ПАЛИТРА TURBO VISION

     Turbo Vision позволяет манипулировать цветом изображения объектов

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

ный в пакете, который охватывает расцвечивание всех стандартных объек-

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

мы, или создавать свою палитру.

                         Стандартная палитра

     Все стандартные  отображаемые объекты имеют свою цветовую палитру

- набор цветов для отдельных элементов этого объекта,  а окна и диало-

говые окна  -  по три палитры.Учитывая структуру отображаемых объектов

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

основного объекта  tApplication,  являются  подэлементами какой - либо

группы, для каждого такого  объекта  палитра  представляется  строкой,

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

палитры данной группы.

     Если в  программе  достаточно использовать цвета основной палитры

по их прямому назначению,  то никаких действий по раскрашиванию предп-

ринимать не  надо,  так как цвета выбираются при отображении на экране

соответствующего объекта с помощью метода Draw :

     procedure <отображаемый объект>.Draw; virtual;

который, в свою очередь, использует методы GetPallete :

     function <отображаемый объект>.GetPallete:

                                                pPallete; virtual;

определяющий указатель на конкретную палитру объекта, и GetColor :

     function tView.GetColor(Color: Word): Word;

где Color - номер входа в палитру;

    результат - атрибуты соответствующего цвета.

                    Изменение стандартной палитры

     Если требуется изменить уже существующий цвет у всех использующих

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

ру.Для этого нужно либо внести изменения в исходный текст  модуля  App

 (константа CAppColor) и перекомпилировать его,  либо внести изменения

в метод  GetPallete объекта tProgram.

     Второй вариант  - когда нужно изменить цвета у какого-нибудь объ-

екта группы,  а в этой группе есть другой объект, обладающий необходи-

мыми цветами.В  этом  случае  можно  изменить  соответствующим образом

константу, определяющую палитру у метода GetPallete.

     Если необходимо изменить цвета конкретного объекта,  а требуемого

сочетания цветов у его владельца нет,  то следует  дополнить  основную

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

там.Так как основная палитра исходно имеет 127 элементов,  то примерно

столько же  можно  к  ней  добавить в случае необходимости.После этого

следует переопределить метод GetPallete основного объекта программы.

     В тех случаях,  когда следует предусмотреть частое изменение цве-

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

зоваться средствами модуля ColorSel.

                 НЕОТОБРАЖАЕМЫЕ ОБЪЕКТЫ TURBO VISION

     Помимо отображаемых,  в  Turbo  Vision имеется ряд неотображаемых

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

редственно с представлением информации на экране, в частности проверки

вводимой информации или размещения в них той или иной информации.

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

информации, коллекции, потоки и ресурсы.Все эти объекты - потомки объ-

екта tObject.

                   Анализаторы вводимой информации

     В Turbo  Vision  2.0  имеется  возможность контроля размещаемой в

строке ввода информации.Для этого служит  серия  объектов,  называемых

анализаторами вводимой информации,  исходным является абстрактный объ-

ект tValidator, а его потомками являются стандартные анализаторы.

     Анализатор множества допустимых символов  (тип  tFilterValidator)

проверяет, входят  ли вводимые символы в множество допустимых,  и если

входят, то помещаются в буфер строки ввода,  а в противном случае сим-

волы игнорируются.Инициализация   такого   анализатора  осуществляется

конструктором Init :

     constructor tFilterValidator.Init(AValidChars: tCharSet);

где AValidChars - множество допустимых символов типа tCharSet.

     Анализатор границ вводимого числа (тип tRangeValidator)  предназ-

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

случае типа  Logint).Этот   анализатор,   являясь   потомком   объекта

tFilterValidator, помимо  проверки  допустимых символов (только цифр и

знаков "+" и "-" в первой позиции вводимой информации) проверяет также

значение введенного числа и его нахождение в заданном диапазоне.

     Анализатор инициализируется конструктором Init :

     constructor tRangeValidator.Init(AMin, AMax: Longint);

где AMin, AMax - миним. и максим. допустимые границы вводимого числа.

     Если введенное  число  не попадает в заданный диапазон,  выдается

сообщение об ошибке в виде информационного окна, при выходе из которо-

го происходит  возврат к строке ввода для внесения соответствующих из-

менений.Окно не закрывается.

     Анализатор по списку строк (тип tStringLookupValidator) сравнива-

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

в коллекции строк.Реакция при неправильно введенной строке аналогичная.

     Анализатор инициализируется конструктором Init :

     constructor tStringLookupValidator.Init(

                                     AStrings: pStringCollection);

где AString - коллекция строк, с которыми сравнивается вводимая инфор-

мация.

     Анализатор по шаблону (тип tPXPictureValidator) позволяет создать

шаблон, по которому проверяется  вводимая  информация.Можно  проверять

количество вводимых символов, их вид и т.д.

     Анализатор инициализируется конструктором Init :

     constructor tPXPictureValidator.Init(

                           const APic: string; AutoFill: Boolean);

где APic - шаблон, по которому проверяется вводимая информация;

    AutoFill - если равен True,  вводимая информация автоматически до-

полняется символами шаблона, не являющимися служебными символами.

     Анализатор должен быть подключен к соответствующей строке ввода с

помощью метода SetValidator строки ввода :

     procedure tInputLine.SetValidator(AValid: pValidator);

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

                          Объект-коллекция

     Объект-коллекция (тип  Collection)  предназначен в первую очередь

для размещения в нем объектов (точнее, указателей на объекты).Основным

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

димости могут изменяться.Кроме этого, коллекция может содержать объек-

ты разных типов и элементы, не являющиеся объектами.

     Создается коллекция с помощью конструктора Init :

     constructor tCollection.Init(ALimit, ADelta: Integer);

где  ALimit - первоначальный размер коллекции;

     ADelta - величина,  на которую изменяется размер в случае необхо-

димости.

     Работа с коллекцией осуществляется следующим образом.Вначале соз-

дается коллекция и инициализируется конструктором Init.После  этого  в

нее можно  помещать  компоненты.При этом в коллекции помещается указа-

тель на размещаемый объект.Если при размещении  очередного  объекта  в

коллекции нет достаточного  места,  она автоматически увеличивается на

величину ADelta.

     Компоненту в коллекцию можно поместить либо в конце списка,  либо

после компоненты с указанным значением индекса.В первом случае исполь-

зуется метод Insert :

     procedure tCollection.Insert(Item: Pointer); virtual;

где  Item - указатель на размещаемый в коллекции объект,

     во втором случае используется метод AtInsert :

     procedure tCollection.AtInsert(Index:Integer;Item: Pointer);

где  Index - номер компоненты, который получает размещаемый объект;

     Item - указатель на размещаемый в коллекции объект.

     Эти методы копии размещаемого в коллекции объекта не создают.

     Следует отметить три важных метода коллекции.

     Метод FirstThat :

     function tCollection.FirstThat(Test: Pointer): Pointer;

где  Test - указатель на функцию, проверяющую некоторое условие;

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

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

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

лироваться с директивой far.Ее заголовок выглядит следующим образом :

     function <имя функции>(Item: Pointer): Boolean; far;

     В этом  заголовке  Item - указатель на компоненту коллекции;  ре-

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

ется, и  False - в противном случае.

     Второй метод - LastThat :

     function tCollection.LastThat(Test: Pointer): Pointer;

где Test - указатель на функцию, проверяющую условие; результат - ука-

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

проверяемое функцией,  указатель на которую равен Test, либо nil, если

ни для одной компоненты коллекции  условие  не  выполняется.Функция  с

указателем Test аналогична такой же функции метода FirstThat.

     Третий метод - ForEach :

     procedure tCollection.ForEach(Action: Pointer);

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

твия с каждой компонентой.Процедура с указателем Action не должна быть

методом и должна компилироваться с директивой far.Ее заголовок :

     procedure <имя процедуры>(Item: Pointer); far;

где Item - указатель на компоненту коллекции.

     Коллекция может содержать не только объекты, но и элементы других

типов.В частности,   имеется   стандартная   коллекция   строк    (тип

tStringCollection).В ней переопределен метод FreeItem, который удаляет

компоненту из коллекции и из динамической памяти.

                         Потоки Turbo Vision

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

данных других типов.Потоки напоминают обычные файлы,  но они могут су-

ществовать не только на внешних устройствах,  но и в оперативной памя-

ти.Другое важное отличие -  возможность  хранения  данных  разных  ти-

пов.Возможны запись и чтение.

     При создании потока в нем не находится никакой информации.Записы-

ваемая в  поток  информация последовательно приписывается к его концу,

так что условный указатель на текущий элемент файла в этом случае ука-

зывает на его конец.После чтения очередной компоненты из потока указа-

тель автоматически настраивается на начало следующей.

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

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

потоки ДОС   (тип   tDosStream)   и    буферированный    поток    (тип

tBufStream).Они позволяют хранить информацию во внешних файлах, причем

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

фер, что повышает быстродействие работы.

     Поток ДОС инициализируется конструктором Init :

     constructor tDosStream.Init( FileName: FNameStr; Mode: Word);

где FileName - имя файла,  с которым связан поток (размеры по правилам

MS-DOS - до 79 символов);

     Mode - категория файла.

     Буферированный поток инициализируется конструктором Init :

     constructor tBufStream.Init( FileName: FNameStr;

                                                 Mode, Size: Word);

где FileName - имя файла,  с которым связан поток (размеры по правилам

MS-DOS - до 79 символов);

    Mode - категория файла;

    Size - размер буфера (обычно от 512 до 2048 байт).

     Перед тем  как поместить объект в поток или взять из потока,  его

следует подготовить.

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

го.У стандартных отображаемых объектов в Turbo Vision такие методы уже

имеются.Первый метод - Store :

     procedure <отображаемый объект>.Store (var S: tStream);

где S  -  поток,  в который помещается объект.Метод размещает объект в

потоке.

     Второй - конструктор Load :

     constructor <отображаемый объект>.Load(var S: tStream);

где S - поток, из которого берется объект.Конструктор загружает объект

из потока в память.

     Для того,  чтобы записать в поток тот или иной  параметр  объекта

(группу параметров,  следующих друг за другом),  можно воспользоваться

методом Write :

     procedure <тип потока>.Wriye (var Buf; Count: Word); virtual;

     Buf - буфер с переписываемой информацией;

     Count - размер переписываемой информации в байтах.

     Это основной метод записи информации в поток.

     Для всех методов имеются аналоги,  осуществляющие чтение информа-

ции из потока.Основной - метод Read, позволяющий читать из потока зна-

чение параметра объекта (группы параметров) :

     procedure <тип объекта>.Read (var Buf; Count: Word); virtual;

     Buf - буфер, в который помещается информация;

     Count - размер переписываемой информации в байтах.

     Вторая операция,  связанная  с подготовкой объекта к записи в по-

ток, - его регистрация.В потоке могут быть объекты разных типов,  поэ-

тому возникает  проблема в определении типов этих объектов при необхо-

димости работы с ними.Для решения этой проблемы  используется  система

регистрации, заключающаяся  в том,  что каждому типу объекта,  который

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

рационный номер.По  этому  номеру будут определяться размер записанной

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

дов, а также адреса методов,  с помощью которых данный объект загружа-

ется в поток и читается из него.

     Для регистрации объекта следует  создать  регистрационную  запись

(типа tStreamRec) :

     type

        tStreamRec = record

           ObjType: Word;

           VmtLink: Word;

           Load: Pointer;

           Store: Pointer;

           Next: Word;

     end;

где ObjType - индивидуальный регистрационный номер объекта;

    VmtLink - смещение адреса таблицы виртуальных методов объекта;

    Load - адрес конструктора Load объекта;

    Store - адрес метода Store объекта;

    Next - смещение адреса следующей регистрационной записи.

     В качестве регистрационной записи,  как  правило,  типизированная

константа, у которой заполнены первые 4 поля.Имя регистрационной запи-

си получается из имени объекта заменой префикса t на префикс R.У стан-

дартных элементов уже есть регистрационные записи.За стандартными объ-

ектами зарезервированы индивидуальные регистрационные номера  с  1  до

999, так что программист может назначать своим объектам номера от 1000

до 65535.Это число записывается в первое  поле  регистрационной  запи-

си.Во второе поле помещается смещение адреса таблицы виртуальных мето-

дов объекта,  в третье поле - адрес конструктора Load, а в четвертое -

адрес метода  Store.Пятое поле заполняется автоматически при регистра-

ции объекта.

     Запись объекта  в  поток  осуществляется  с  помощью  метода  Put

 объекта tStream :

     procedure tStream.Put(P: pObject);

где P - указатель на размещаемый в потоке объект.

     Чтение объекта из потока осуществляет метод Get объекта tStream :

     function tStream.Get; pObject;

где результат - указатель на созданный объект.

     После работы с потоком его следует закрыть процедурой Dispose :

     Dispose(MyStream, Done);

где MyStream - поток, с которым завершается работа;

     Done - деструктор потока.

                               Ресурсы

     У рассмотренных потоков есть недостаток  -  непросто  осуществить

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

специальный объект - файл ресурсов (tResourceFile),  связанный с пото-

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

имени (идентификатору).Этот поток дополнен потомком  коллекции  строк,

содержащим адреса  компонент (ресурсов) в потоке,  размеры компонент и

их имена.

     Инициализируется файл ресурсов конструктором Init ;

     constructor tResourceFile.Init(AStream: pStream);

где AStream - поток, который связывается с файлом ресурсов.

     Прежде чем инициализировать файл ресурсов,  следует создать соот-

ветствующий поток.

     Размещение объекта  в файле ресурсов осуществляется с помощью ме-

тода Put :

     procedure tResourceFile.Put(Item: pObject; Key: String);

где Item - указатель на размещаемый в файле ресурсов объект;

    Key - имя, присвоенное размещаемому объекту.

     Извлечение объекта из файла ресурсов осуществляется с помощью ме-

тода Get :

     function tResourceFile.Get(Key: String): pObject;

     Key - имя, присвоенное размещаемому объекту;

     результат - указатель на найденный объект или nil,  если нет объ-

екта с таким именем.

     В файле ресурсов можно хранить  библиотеку  интерфейсных  элемен-

тов.Использование таких  файлов  является  хорошим средством повышения

эффективности программирования, ускоряя процесс создания программ.

                             Списки строк

     В Turbo  Vision  имеется  специальный  объект - список строк (тип

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

строк, которые можно вызвать по номеру.

     Прежде чем рассматривать объект tStrihgList,  познакомимся с объ-

ектом типа tStrListMaker, позволяющим создать список строк и наполнить

его соответствующим содержанием.Инициализируется он конструктором Init

     constructor tStrListMaker.Init(AStrSize,AIndexSize: Word);

где AStrSize - размер буфера для размещения строк;

     AIndexSize - максимальный индекс размещаемой строки.

     Размещаются строки в список с помощью метода Put :

     procedure tStrListMaker.Put(Key: Word; S: string);

где Key - индекс размещаемой строки;

     S - размещаемая строка.

     Сам список tStrList конструктора не имеет, получить из него стро-

ку можно с помощью метода Get :

     function tStrList.Get(Key: Word): string;

где Key - индекс строки;

    результат - найденная строка.

          НЕКОТОРЫЕ ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ TURBO VISION

                          Текстовый редактор

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

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

должен входить  составной частью какого-либо пакета.Пакет Turbo Vision

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

товые редакторы.Исходным  является объект tEditor.Его потомок - объект

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

файлами.Без особых изменений можно создавать редакторы, работающие од-

новременно с любым количеством файлов,  содержащих  тексты  до  64  К,

обеспечивающие работу с клавиатурой и мышью,  поиск в тексте и замену,

использование буфера и т.д.

                   Отображение древовидных структур

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

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

ду отдельными  элементами.К  таким  структурам относятся меню и строки

состояния.Для отображения подобных структур в Turbo Vision имеются два

специальных объекта :  абстрактный объект tOutlineViewer, осуществляю-

щий отображение структуры на экране, и tOutline, осуществляющий работу

с конкретной  древовидной  структурой.Последний объект позволяет скры-

вать или показывать на экране те или иные ветви  структуры  с  помощью

мыши или клавиатуры.

               Диалоговое окно задания цветной палитры

     Существует стандартное    диалоговое    окно    задания    цветов

tColorDialog.С помощью этого окна можно изменять лишь имеющиеся  цвета

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

жаемых объектов программы соответствующего типа.

                              ЗАКЛЮЧЕНИЕ

     Очень важным показателем при оценке программных продуктов являет-

ся удобство работы пользователя.

     Поэтому в  настоящее время ни один программный продукт,  лишенный

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

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

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

ским интерфейсом.

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

создания пользовательского интерфейса.

     Представленный в данной   работе  разработанный  фирмой   Borland

International  пакет  Turbo Vision 2.0 является удобным  средством уп-

рощения работы по  организации  ввода/вывода, его унификации  с учетом

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

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

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

     Более универсальным является диалоговый способ передачи  информа-

ции и именно для организации диалога предназначен в первую очередь па-

кет Turbo Vision.Использование этого пакета  освобождает  программиста

от занимающей много времени работы,  связанной   с  организацией  вво-

да/вывода, которая повторяется от программы к программе,  требует  вы-

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

ния основной задачи.

     В современных программах,  работающих в текстовом режиме,  диалог

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

строк состояния.Turbo Vision  позволяет  реализовать все эти  средства

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

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

мендации по их использованию.

     Turbo Vision представляет собой библиотеку объектов,  позволяющих

создать пользовательский интерфейс. Почти все объекты библиотеки явля-

ются потомками общего абстрактного объекта tObject.В работе рассмотре-

на их классификацию, исходя из задач, возникающих при создании  интер-

фейса.

     В работе  подробно  рассмотрен    порядок работы с  отображаемыми

объектами (создание,  помещение в группу, задание параметров),  работы

с  модальными  объектами,  а  также виды неотображаемых объектов Turbo

Vision и работу с ними.

     Пакет    Turbo Vision  позволяет  использовать   стандартную  па-

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

может быть очень важным в ряде случаев :  можно создать текстовый  ре-

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

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

ры.

     Исходя из средств и  особенностей  пакета  можно   сказать,   что

Turbo Vision фирмы Borland International является одним из самых удоб-

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


Страницы: 1, 2, 3, 4, 5, 6, 7


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

Обратная связь

Поиск
Обратная связь
Реклама и размещение статей на сайте
© 2010.